El método String indexOf () devuelve el índice de la primera aparición del carácter / subcadena especificado dentro de la cadena.
La sintaxis del indexOf()
método String
string.indexOf(int ch, int fromIndex)
o
string.indexOf(String str, int fromIndex)
Aquí, la cadena es un objeto de la String
clase.
Parámetros indexOf ()
Para encontrar el índice de un carácter, indexOf()
toma estos dos parámetros:
- ch - el carácter cuyo índice inicial se encuentra
- fromIndex (opcional): si
fromIndex
se pasa, elch
carácter se busca a partir de este índice
Para encontrar el índice de la subcadena especificada dentro de la cadena, indexOf()
toma estos dos parámetros:
- str - la cadena cuyo índice de inicio se encuentra
- fromIndex (opcional): si
fromIndex
se pasa, lastr
cadena se busca a partir de este índice
indexOf () Valor devuelto
- devuelve el índice de la primera aparición del carácter / cadena especificada
- devuelve -1 si no se encuentra el carácter / cadena especificada.
Ejemplo 1: Java String indexOf ()
// Java String indexOf() with only one parameter class Main ( public static void main(String() args) ( String str1 = "Learn Java"; int result; // getting index of character 'J' result = str1.indexOf('J'); System.out.println(result); // 6 // the first occurrence of 'a' is returned result = str1.indexOf('a'); System.out.println(result); // 2 // character not in the string result = str1.indexOf('j'); System.out.println(result); // -1 // getting the index of "ava" result = str1.indexOf("ava"); System.out.println(result); // 7 // substring not in the string result = str1.indexOf("java"); System.out.println(result); // -1 // index of empty string in the string result = str1.indexOf(""); System.out.println(result); // 0 ) )
Notas:
- El carácter
'a'
aparece varias veces en la"Learn Java"
cadena. ElindexOf()
método devuelve el índice de la primera aparición de'a'
(que es 2). - Si se pasa la cadena vacía,
indexOf()
devuelve 0 (se encuentra en la primera posición. Es porque la cadena vacía es un subconjunto de cada subcadena.
Ejemplo 2: indexOf () con parámetro fromIndex
class Main ( public static void main(String() args) ( String str1 = "Learn Java programming"; int result; // getting the index of character 'a' // search starts at index 4 result = str1.indexOf('a', 4); System.out.println(result); // 7 // getting the index of "Java" // search starts at index 8 result = str1.indexOf("Java", 8); System.out.println(result); // -1 ) )
Notas:
- La primera aparición de
'a'
en la"Learn Java programming"
cadena está en el índice 2. Sin embargo, el índice de segundo'a'
se devuelve cuandostr1.indexOf('a', 4)
se utiliza. Es porque la búsqueda comienza en el índice 4. - La
"Java"
cuerda está en la"Learn Java programming"
cuerda. Sin embargo,str1.indexOf("Java", 8)
devuelve -1 (cadena no encontrada). Es porque la búsqueda comienza en el índice 8 y no hay ningún"Java"
archivo"va programming"
.
Lectura recomendada: Java String lastIndexOf ()