¿Cómo comprobar arraylist contiene esta palabra en particular en android?

Tengo ArrayList<String> en que he añadido 3-4 nombres de sitios web. Al igual que, http://www.google.com , https://www.stackoverflow.com , etc Ahora en mi aplicación si escribo simplemente "google", entonces quiero comparar esa palabra "google" con el ArrayList<String> .

Estoy atascado aquí. ¿Puede alguien decirme cómo puedo comparar la cadena con el objeto matriz?

Gracias por adelantado.

Para ello, debe anular la implementación de contains() . Les estoy dando un ejemplo sencillo.

Clase ArrayList personalizada

 public class MyArrayList extends ArrayList<String> { private static final long serialVersionUID = 2178228925760279677L; @Override public boolean contains(Object o) { return indexOf(o) >= 0; } @Override public int indexOf(Object o) { int size = this.size(); if (o == null) { for (int i = 0; i < size ; i++) { if (this.get(i) == null) { return i; } } } else { for (int i = 0; i < size ; i++) { if (this.get(i).contains(String.valueOf(o))) { return i; } } } return -1; } } 

Cómo utilizar

 MyArrayList arrayList = new MyArrayList(); arrayList.add("http://www.google.com"); arrayList.add("https://www.stackoverflow.com"); arrayList.add("http://pankajchunchun.wordpress.com"); if (arrayList.contains("google")) { System.out.println("ArrayList Contains google word"); } if (arrayList.contains("igoogle")) { System.out.println("ArrayList Contains igoogle word"); } else { System.out.println("ArrayList does not Contains igoogle word"); } 

A continuación se muestra el ejemplo de código anterior

 ArrayList Contains google word ArrayList does not Contains igoogle word 

Consulte el código fuente de ArrayList para más implementación personalizada.

ArrayList.contains() prueba el String a través de iguales. De la documentación:

Public boolean contains (Object o) Devuelve true si esta lista contiene el elemento especificado. De forma más formal, devuelve true si y sólo si esta lista contiene al menos un elemento e tal que (o == null? E == null: o.equals (e)).

ejemplo:

 boolean contains = yourArrayListInstance.contains(yourString); 

Editar. Si desea comprobar si hay subcadena tiene que hacer un bucle en el contenido de ArrayList y llamar a String.contains

Utilice una función auxiliar como esta

 public static boolean containsSubString(ArrayList<String> stringArray, String substring){ for (String string : stringArray){ if (string.contains(substring)) return true; } return false; } 

Puede iterar a través de su ArrayList<String> como

 public String getWebsiteName(String toMatchString) { ArrayList<String> yourArrayList = new ArrayList<String>(); for (String webSiteName : yourArrayList) { if (webSiteName.contains(toMatchString)) return webSiteName; } return null; } 

Y obtener la String correspondiente

  • ¿Cómo ver todos los artículos en arraylist java?
  • ¿Qué es más rápido: un Cursor o ArrayList?
  • Recuperar un elemento de la lista de matrices en Android?
  • ¿Cuál es la manera más rápida de filtrar datos de ArrayList?
  • Pasar ArrayList <CustomObject> entre actividades
  • La lista de arreglos de Android RecyclerView cambia dinámicamente
  • Actualizar TextView utilizando Timer y ArrayList
  • ¿Pasar ArrayList con objetos a una nueva actividad?
  • Obtener valor (String) de ArrayList <ArrayList <String >> (); En Java
  • Java.lang.IndexOutOfBoundsException: Invalid index 2, size is 2
  • No se pueden eliminar elementos duplicados de arraylist de hashmap
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.