Para nuestra búsqueda en un array vamos a usar java.util.Arrays.binarySearch(array[], key)
Los elementos del array en el cual queremos buscar, tienen que estar ordenados en modo ascendente.
Si el elemento a buscar existe en el array, retorna un entero positivo, que corresponde con la posición del elemento en el array.
Si el elemento a buscar NO existe en el array, retorna un entero negativo.
Ej.
String arrayTest[] = {"aa", "bb", "cc", "dd", "ee"};
//buscamos un elemento que existe en el array
int idx = Arrays.binarySearch(arrayTest, "dd");
System.out.println( "Elemento encontrado en: "+idx);
//buscamos un elemento que NO existe en el array
idx = Arrays.binarySearch(arrayTest, "zz");
System.out.println( "No se encuentra elemento, resultado: "+idx);
Resultado:
run:
Elemento encontrado en: 3
No se encuentra elemento, resultado: -6
Si el array no esta ordenado, el resultado es indefinido.
En caso que el array pueda estar desordenado, puede usarse otro método de "java.util.Arrays"
Arrays.sort( arrayTest);
int idx = Arrays.binarySearch(arrayTest, "dd");
...
Buscar un elemento en un array - java Arrays
Suscribirse a:
Enviar comentarios (Atom)
1 comentario:
Muy bueno!
Publicar un comentario