Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Método indexOf() | String Avançado
Java Avançado

bookMétodo indexOf()

Como encontrar o índice de um caractere específico em uma String?

Para localizar o índice da primeira ocorrência de uma letra específica, a classe String fornece o método indexOf(). Este método é sobrecarga e possui várias implementações. Vamos entender o que cada uma delas faz:

indexOf(String str)

indexOf(String str) - neste método, o parâmetro especifica o que estamos procurando. Pode ser uma única letra entre aspas duplas (""), uma sequência de letras ou até mesmo uma palavra. Este método retorna o índice da primeira ocorrência do parâmetro especificado na string. Por exemplo, vamos encontrar o índice da letra "l" na string "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int index = hello.indexOf("l"); // output the index of the first occurrence of "l" System.out.println("First appearance of the letter 'l' is on index " + index); } }

No exemplo acima, inicializamos a variável index utilizando o método indexOf("l"). Agora, essa variável contém o índice da primeira ocorrência da letra "l" na string "Hello".

indexOf(String str, int fromIndex)

indexOf(String str, int fromIndex) - o primeiro parâmetro é o mesmo de antes, especificando o que estamos procurando. O segundo parâmetro determina o índice inicial a partir do qual começamos a busca. Por exemplo, na palavra "Hello", existem 2 ocorrências da letra "l", e queremos encontrar o índice da segunda ocorrência. Pelo primeiro exemplo, sabemos que a primeira ocorrência está no índice 2, então vamos definir o parâmetro fromIndex como 3 e encontrar o índice do segundo "l":

Main.java

Main.java

copy
123456789101112131415
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int firstIndex = hello.indexOf("l"); // find the index of the second appearance of the letter "l", starting from the position after the first "l" int secondIndex = hello.indexOf("l", firstIndex + 1); // output the index of the second occurrence of "l" System.out.println("Second appearance of the letter 'l' is on index " + secondIndex); } }

No exemplo acima, foi adotada uma abordagem mais prática. Utilizou-se a localização da primeira ocorrência da letra especificada para buscar a segunda letra a partir do índice incrementado em 1. Dessa forma, a busca começa a partir do próximo índice após o índice da primeira ocorrência da letra ou conjunto de letras desejado.

Além disso, os parâmetros String str e int fromIndex podem ser intercambiados.

Também é importante observar que, se o método indexOf() não encontrar a letra ou conjunto de letras especificado, ele retornará o valor -1. Por exemplo:

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the letter "d" in the string int index = hello.indexOf("d"); // output the index, if the specified letter is not found, the value will be -1 System.out.println("Value of index, if it does not find a specified letter: " + index); } }

A busca pela letra "d" na string "Hello" não retornou nenhum resultado, e o método retornou -1. Isso pode ser útil para definir condições ou criar um ponto de saída em um loop.

Como encontrar o último índice na string

A classe String também possui um método que permite a busca a partir do final da string. Esse método é chamado de lastIndexOf(). Ele opera sob o mesmo princípio. Vamos considerar um exemplo de como encontrar a última ocorrência da letra "l" na string "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the last index of the letter "l" int lastIndex = hello.lastIndexOf("l"); // output the last index where the letter "l" appears System.out.println("Last index of the letter 'l' : " + lastIndex); } }

Aqui, obtivemos o resultado 3, que representa o índice da última ocorrência da letra "l".

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 4

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 2.63

bookMétodo indexOf()

Deslize para mostrar o menu

Como encontrar o índice de um caractere específico em uma String?

Para localizar o índice da primeira ocorrência de uma letra específica, a classe String fornece o método indexOf(). Este método é sobrecarga e possui várias implementações. Vamos entender o que cada uma delas faz:

indexOf(String str)

indexOf(String str) - neste método, o parâmetro especifica o que estamos procurando. Pode ser uma única letra entre aspas duplas (""), uma sequência de letras ou até mesmo uma palavra. Este método retorna o índice da primeira ocorrência do parâmetro especificado na string. Por exemplo, vamos encontrar o índice da letra "l" na string "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int index = hello.indexOf("l"); // output the index of the first occurrence of "l" System.out.println("First appearance of the letter 'l' is on index " + index); } }

No exemplo acima, inicializamos a variável index utilizando o método indexOf("l"). Agora, essa variável contém o índice da primeira ocorrência da letra "l" na string "Hello".

indexOf(String str, int fromIndex)

indexOf(String str, int fromIndex) - o primeiro parâmetro é o mesmo de antes, especificando o que estamos procurando. O segundo parâmetro determina o índice inicial a partir do qual começamos a busca. Por exemplo, na palavra "Hello", existem 2 ocorrências da letra "l", e queremos encontrar o índice da segunda ocorrência. Pelo primeiro exemplo, sabemos que a primeira ocorrência está no índice 2, então vamos definir o parâmetro fromIndex como 3 e encontrar o índice do segundo "l":

Main.java

Main.java

copy
123456789101112131415
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int firstIndex = hello.indexOf("l"); // find the index of the second appearance of the letter "l", starting from the position after the first "l" int secondIndex = hello.indexOf("l", firstIndex + 1); // output the index of the second occurrence of "l" System.out.println("Second appearance of the letter 'l' is on index " + secondIndex); } }

No exemplo acima, foi adotada uma abordagem mais prática. Utilizou-se a localização da primeira ocorrência da letra especificada para buscar a segunda letra a partir do índice incrementado em 1. Dessa forma, a busca começa a partir do próximo índice após o índice da primeira ocorrência da letra ou conjunto de letras desejado.

Além disso, os parâmetros String str e int fromIndex podem ser intercambiados.

Também é importante observar que, se o método indexOf() não encontrar a letra ou conjunto de letras especificado, ele retornará o valor -1. Por exemplo:

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the letter "d" in the string int index = hello.indexOf("d"); // output the index, if the specified letter is not found, the value will be -1 System.out.println("Value of index, if it does not find a specified letter: " + index); } }

A busca pela letra "d" na string "Hello" não retornou nenhum resultado, e o método retornou -1. Isso pode ser útil para definir condições ou criar um ponto de saída em um loop.

Como encontrar o último índice na string

A classe String também possui um método que permite a busca a partir do final da string. Esse método é chamado de lastIndexOf(). Ele opera sob o mesmo princípio. Vamos considerar um exemplo de como encontrar a última ocorrência da letra "l" na string "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the last index of the letter "l" int lastIndex = hello.lastIndexOf("l"); // output the last index where the letter "l" appears System.out.println("Last index of the letter 'l' : " + lastIndex); } }

Aqui, obtivemos o resultado 3, que representa o índice da última ocorrência da letra "l".

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 4
some-alt