2012-05-16 24 views
10

Esiste un modo per controllare se un elenco contiene un determinato elemento? Ho guardato le funzioni List e non ho visto alcuna funzione contain() come Java o C#, quindi mi stavo chiedendo come le altre persone stanno gestendo questo.Verifica se un elenco di vertici contiene un oggetto

ho davvero bisogno di usare un elenco I non posso uso un mappa come in questo esempio here

Quello che ho adesso è davvero male ..

    for (String s : allContacts) 
        {      

         for(String ic:insertedContacts) 
         {       
          if (s != ic) 
          { 
            errorContacts.add(s); 
            break; 
          } 
          break; 
         } 
       } 

risposta

24

Un set potrebbe essere quello che stai cercando.

  1. Definire un nuovo set. Set<String> mySet = new Set<String>();
  2. Utilizzare il metodo Set.addAll() per aggiungere tutti gli elementi Elenco all'insieme. mySet.addAll(myList);.
  3. Utilizzare il metodo Set.contains() per verificare il Set per l'elemento che si sta cercando.
+4

A volte sono impazzito dal venditore. Devo memorizzare un elenco di coppie di valori chiave univoci. Prima volevo usare le liste ma non volevo scorrere tutti gli elementi per evitare di inserire un valore chiave duplicato. Ho pensato di utilizzare le mappe poiché hanno un metodo containskey() per verificare la presenza di duplicati prima dell'inserimento. Devo anche esporre questi dati a visualforce e sembra che le mappe non possano essere associate a elementi visivi come l'apice: ripetere. –

+2

salesforce mi fa impazzire anche io. – edgartheunready

+1

'' può essere utilizzato per iterare su una mappa. http://salesforce.stackexchange.com/a/9323/72 –

Problemi correlati