2012-05-16 43 views
10

¿Hay alguna forma de verificar si una lista contiene un determinado elemento? Miré las funciones de la Lista y no vi ninguna función contener() como Java o C#, así que me preguntaba cómo otras personas están manejando esto.Comprueba si una lista principal contiene un objeto

que realmente necesita utilizar una lista I no puede uso un Mapa como en este ejemplo here

Lo que tenemos ahora es muy malo ..

    for (String s : allContacts) 
        {      

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

Respuesta

24

Un conjunto podría ser lo estas buscando.

  1. Definir un nuevo conjunto. Set<String> mySet = new Set<String>();
  2. Utilice el método Set.addAll() para agregar todos los elementos de la Lista al conjunto. mySet.addAll(myList);.
  3. Utilice el método Set.contains() para verificar el conjunto del elemento que está buscando.
+4

A veces me vuelvo loco por la fuerza de ventas. Necesito almacenar una lista de pares únicos de valores clave. Primero quería usar listas, pero no quería repetir todos los elementos para evitar insertar un valor clave duplicado. Pensé en usar mapas ya que tienen un método containskey() para buscar duplicados antes de la inserción. También necesito exponer estos datos a la fuerza visual y parece que los mapas no pueden vincularse a elementos de la fuerza visual como apex: repeat. –

+2

salesforce me vuelve loco también. – edgartheunready

+1

'' se puede utilizar para iterar sobre un mapa, también. http://salesforce.stackexchange.com/a/9323/72 –

Cuestiones relacionadas