Qual é a diferença entre indexof () e lastindexof () em java?

Considere uma string: String test = "Java Learnings"

Então,

test.indexOf ("a") = 1 [

Como a primeira ocorrência de 'a' está no 1º índice

]

test.lastIndexOf ("a") = 7 [

Porque a última ocorrência do caractere "a" está no sétimo índice

]

Para saber mais sobre as funções de manipulação de string do java, você pode consultar este artigo:

Funções de manipulação de string em Java

Em ArrayList

IndexOf () retorna a primeira posição do índice do valor.

lastIndexOf () retorna a última posição do índice do valor.

Exemplo

void useMethod () {

Lista ArrayList = new ArrayList ();

list.add (1);

list.add (3);

list.add (4);

list.add (1);

List.add (9);

System.out.print ("indexOf" + list.indexOf (1) + "último índice" + list.lastIndexOf (1));

}

Resultado :-

indexOf 0 último índice 3

Na verdade, indexOf () e lastIndexOf () são funções de String. A única diferença básica entre eles é que indexOf () retorna o primeiro número de índice de ocorrência de um determinado caractere em uma String. Enquanto no caso de lastIndexOf (), o último índice em que um determinado caractere ocorre em uma String é retornado.

Por exemplo:

  1. String st = "a raposa pula sobre o poço"; System.out.println (st.indexOf ('t')); System.out.println (st.lastIndexOf ('t'));

Para o código acima:

st.indexOf ('t') retornará 0 enquanto st.lastIndexOf ('t') retornará 26

Espero que ajude

IndexOf () e lastIndexOf () são métodos do objeto String. Esses métodos serão usados ​​para obter a posição ou o índice de um caractere / substring específico na cadeia de destino.

Anotações importantes:

  • O índice de uma sequência começaria a partir de 0.
  • A pesquisa do caractere ou substring diferencia maiúsculas de minúsculas. Significa pequeno a e capital A são considerados de maneira diferente.
  • Quando a sequência ou caractere de destino não for encontrada na sequência de destino. Ele retornará -1.
  • A única diferença entre esses métodos é apenas a maneira de atravessar.

índice de()

Este método retorna

a primeira ocorrência

do caractere ou substring especificado. A travessia seria de

início da string

.

  • indexOf (caractere ch);
  • indexOf (String str);
  • indexOf (char ch, int fromIndex);
  • indexOf (int fromIndex, char ch);
  1. String temp = "Strings em Java. Vários métodos em Java."; System.out.println ("Posição do char 'i':" + temp.indexOf ('i'))); A saída seria 3 como a primeira letra é aparecendo no índice 3 na string.System.out.println ("Posição do char 'i' após o valor do índice especificado:" + temp.indexOf ('i', 5)); a saída seria 8 quando a travessia estivesse sendo iniciada após o índice 5. E a primeira instância de i está presente na posição 8 do índice.

lastIndexOf ()

Este método retorna

a última ocorrência

do caractere ou substring especificado. A travessia seria de

início da string

.

  • indexOf (caractere ch);
  • indexOf (String str);
  1. String temp = "Strings em Java. Vários métodos em Java."; System.out.println ("Posição do char 'i' do final:" + temp.lastIndexOf ('i'))); Saída seria 33 como última letra está aparecendo no índice 33 na sequência especificada.

Para os métodos abaixo, o retrocesso funciona junto com o índice especificado.

  • indexOf (char ch, int fromIndex);
  • indexOf (int fromIndex, char ch);
  1. System.out.println ("Posição do char 'i' após determinado valor de índice:" + temp.lastIndexOf ('i', 5)); A saída seria 3, pois a travessia é iniciada após o índice 5, mas de trás para a frente na cadeia .

Exemplo de código:

Continue lendo..

Para saber mais, visite:

http://www.allinoneblogs.com