JavaRush /Blogue Java /Random-PT /Método IndexOf da classe String: por que é necessário e c...

Método IndexOf da classe String: por que é necessário e como funciona

Publicado no grupo Random-PT
Olá! Os programadores costumam usar métodos automaticamente, sem pensar em como funcionam. Estas são as técnicas básicas que você deve conhecer.

O que é sobrecarga de método?

Antes de examinarmos o método mencionado no título, vamos lembrar (e alguém saberá) o que é sobrecarga de método. A sobrecarga de métodos Java permite que dois ou mais métodos com o mesmo nome sejam definidos na mesma classe. Isto só é possível se eles tiverem parâmetros de entrada diferentes. Nesse caso, os métodos são chamados de sobrecarregados e o próprio processo é chamado de sobrecarga de métodos. O método IndexOf da classe String: por que é necessário e como funciona - 1A sobrecarga de método é um dos princípios fundamentais do polimorfismo em Java.

Para que serve um método indexOfde classe ?String

Imagine que você tem uma longa corda. Por exemplo, uma carta, e você precisa encontrar o local onde ocorre o primeiro endereço ao destinatário por um nome que você já conhece. Como você vai fazer isso? Use o método indexOf javade classe String. Este método é um exemplo típico de sobrecarga de método, que discutimos acima.

Opções de métodoindexOf

O método java string indexOftem quatro variações diferentes:

Nº 1.indexOf(int ch)

O método int indexOf(int ch)retorna o índice na string fornecida da primeira ocorrência do caractere especificado. Ou seja, obteremos o número da primeira ocorrência de um determinado caractere, contando da esquerda para a direita. Exemplo:
public static void main(String[] args) {
   String str = "Diego, where is my money?";
   int value = str.indexOf('e');
   System.out.println(value);
}
Saída do console:

2
Se o caractere que procuramos não estiver nesta linha, obteremos -1.
public static void main(String[] args) {
   String str = "Diego, where is my money?";
   int value = str.indexOf('j');
   System.out.println(value);
}
Saída do console:

-1
PS Para não confundir nada, não se esqueça que os caracteres de uma linha não são contados a partir de “1,2,3...”, mas sim de “0,1,2...”

Nº 2.indexOf(int ch, int fromIndex)

O método int indexOf(int ch, int fromIndex)retorna o índice nesta string da primeira ocorrência do caracter especificado, iniciando a pesquisa no índice especificado. Este método é uma versão mais modernizada do anterior. A diferença é que indicamos o número do elemento a partir do qual realmente começará a busca. Exemplo:
public static void main(String[] args) {
   String str = "Diego, where is my money?";
   int value = str.indexOf('e',5);
   System.out.println(value);
}
Saída do console:

9
Se o índice a partir do qual a pesquisa será realizada exceder o comprimento da string, a resposta será -1. Método IndexOf da classe String: por que é necessário e como funciona - 2Como você deve ter notado, na assinatura desses dois métodos (o que os métodos tomam como argumentos), o tipo do símbolo que está sendo passado é especificado como int, não char. No entanto, nós transmitimos char. Isso ocorre porque as strings são armazenadas como uma matriz de bytes, onde as células correspondem a um caractere específico do tipo char. A correspondência entre os bytes charé feita de acordo com a tabela ASCII. ASCII (código padrão americano para intercâmbio de informações) é uma tabela que mapeia caracteres comuns imprimíveis e não imprimíveis para códigos numéricos. Portanto, quando um determinado caractere é passado char, ele é automaticamente convertido em um número que representa aquele caractere na tabela ASCII. Com base nisso, podemos passar diretamente o número ( int) para o método, que corresponde ao caractere que necessitamos. Por exemplo, o caracter 'e' na tabela ASCII corresponde ao número 101, portanto podemos repetir o exemplo anterior, mas sem o char:
public static void main(String[] args) {
   String str = "Diego, where is my money?";
   int value = str.indexOf(101,5);
   System.out.println(value);
}
Nossa saída do console não mudou:

9
PS Em alguns casos, esses métodos são intercambiáveis, como por exemplo str.indexOf('e');serão semelhantes - str.indexOf('e', 0);.

N ° 3.indexOf(String str)

O método int indexOf(String str)retorna o índice na linha fornecida da primeira ocorrência da substring especificada. É fundamentalmente diferente da primeira opção porque este método já procura uma substring inteira ( String). Graças a isso, podemos procurar algo mais específico. Exemplo:
public static void main(String[] args) {
   String str = "Diego, where is my money? Diego,you made me very upset";
   int value = str.indexOf("Diego");
   System.out.println(value);
}
Saída do console:

0
PS Todas as variações indexOfdiferenciam maiúsculas de minúsculas: caracteres maiúsculos (letras maiúsculas) e caracteres minúsculos (letras minúsculas) são considerados diferentes. Tome cuidado.

Nº 4.indexOf(String str, int fromIndex)

O método indexOf(String str, int fromIndex)retorna o índice nesta linha da primeira ocorrência da substring especificada, começando no índice especificado. Esta opção é novamente uma opção anterior mais modernizada, mas com indicação do local a partir do qual será realizada a busca. Exemplo:
public static void main(String[] args) {
   String str = "Diego, where is my money? Diego,you made me very upset";
   int value = str.indexOf("Diego", 1);
   System.out.println(value);
}
Saída do console:

26
PS Se você especificar um índice inicial negativo, o método indexOfo perceberá como 0. Nesse caso, o método será novamente semelhante ao anterior (no qual o índice inicial não é especificado). É tudo por hoje. Agora você tem mais conhecimento graças ao indexOfJava!
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION