2010-12-02 5 views
2

J'ai une carte avec la clé et la valeur et mon but est d'obtenir la liste des 'clés'. Je pense à l'obtenir au tableau ou à la liste. Je suis arrivé au point où j'ai des valeurs clés dans le SET mais je n'ai pas compris comment convertir en tableau.Comment convertir SET en tableau dans APEX?

ci-dessous est mon code:

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 :(
+0

Pour tous ceux qui viennent ici à la recherche d'une réponse pour 'Set'; La question porte sur 'Set's, mais l'exemple de code utilise' Map'. La solution mentionne 'keyset()', mais cela n'existe pas pour 'Set'. Si vous avez besoin de convertir un 'Set' en' List', ce que j'ai fait est d'utiliser 'Map' à la place et d'ajouter la valeur comme clé, ce qui réplique la fonctionnalité' Set'. –

Répondre

0

Pourriez-vous utiliser:

Set clés = mmm.keySet(); Liste keyList = nouvelle Liste (clés);

0

Vous devez toujours utiliser des génériques pour la sécurité de type.

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); 

Selon le lien: https://salesforce.stackexchange.com/questions/5447/is-there-a-difference-between-an-array-and-a-list-in-apex.

Cette solution fonctionnera.

Questions connexes