Как преобразовать набор в массив в вершине?
-
30-09-2019 - |
Вопрос
У меня есть карта с ключом и ценностью, и моя цель - получить список «ключа». Я подумываю доставить его в массив или список. Дошел до точки, когда у меня есть значения ключей в наборе, но я не выяснил, как преобразовать в массив.
Ниже мой код:
Map<String, String> mmm = new Map<String, String>();
mmm.put('one', 'oneee');
mmm.put('two', 'twooo');
mmm.put('three', 'threeee');
mmm.put('four', 'fourff');
//outputs values in the map
system.debug('=======values()==========>' + mmm.values());
//outputs key in the map
system.debug('=======keyset()===========>' + mmm.keyset());
//get keys in the type SET
SET<string> s = mmm.keyset();
//returns 4
system.debug('------------------------------------' + s.size());
s.arrayTo() //this method does not exist :(
Решение
Использовать List.addAll
метод?
Если нет - вы всегда могли бы вручную пройти через набор ...
Другие советы
Не могли бы вы использовать:
Установить клавиши = mmm.keyset (); Список KeyList = новый список (ключи);
Вы всегда должны использовать дженерики для безопасности типа.
Map<String, String> mmm = new Map<String, String>();
mmm.put('one', 'oneee');
mmm.put('two', 'twooo');
mmm.put('three', 'threeee');
mmm.put('four', 'fourff');
List<String> lstKeys = new List<String>(mmm.keyset());
System.debug('Output : '+lstKeys);
Согласно ссылке: https://salesforce.stackexchange.com/questions/5447/is-there-a-difference-between-an-array-and-a-list-in-apex .
Это решение будет работать.
Не связан с StackOverflow