Existem quatro variantes do método indexOf() .

  1. indexOf(): Este método retorna o índice dentro desta string da primeira ocorrência do caractere especificado ou -1 se o caractere não ocorrer.
  2. indexOf (char ch, int start ): Este método retorna o índice dentro desta string da primeira ocorrência do caractere especificado, iniciando a pesquisa no índice especificado ou -1 se o caractere não ocorrer.
  3. indexOf (String str): Este método retorna o índice dentro desta string da primeira ocorrência da substring especificada . Se não ocorrer como substring, -1 será retornado.
  4. indexOf (String str, int start ): Este método retorna o índice dentro desta string da primeira ocorrência da substring especificada , começando no índice especificado . Se não ocorrer, -1 é retornado. 

Agora vamos avançar com as aplicações de indexOf() método em java que mais frequentemente estão listados abaixo como segue : 

  1. Para saber se um caractere é vogal ou consoante.
  2. Para contar as ocorrências de qualquer caractere em uma string.
  3. Para saber se um personagem está presente na String ou não.
  4. Para descobrir se uma substring está presente em String ou não.
  5. Para descobrir se uma entrada é um dígito, uma letra ou um caractere especial.

Agora vamos discutir cada um desses aplicativos, apoiando-os com a ajuda de programas java limpos 

Aplicação 1

Verificaremos se o caractere está presente em uma sequência de vogais predefinida. Se estiver presente, é uma consoante de outra vogal.

Exemplo 

class Vowels
{
        // function to check if the passed
        // character is a vowel
    public static boolean vowel(char c)
    {
        return "aeiou".indexOf(Character.toLowerCase(c))>=0;
    }
  
        // Driver program
    public static void main(String[] args)
    {
        boolean isVowel = vowel('z');
          
                // Printing the output
                if(isVowel)
            System.out.println("Vowel");
        else
            System.out.println("Consonant");
    }
}
Saída
Consoante

Aplicação 2: para contar as ocorrências de qualquer caractere em uma string.

Neste programa, verificaremos se o caractere está presente em uma string. Se estiver presente, iremos incrementar o contador e executar novamente a função indexOf() até que o índice NÃO seja ENCONTRADO.

Exemplo 

import java.io.*;
  
class GFG {
    public static void main (String[] args) {
        String s="GeeksForGeeks";
      int count=0;
        
      for(int i=0;i<s.length();i++)
      {
      i=s.indexOf('e',i);
        if(i<0)
              break;
        count++;
      }
      System.out.println("Count is "+ count);
    }
}
Saída
A contagem é 4

Aplicação 3: Saber se um caractere está presente na String ou não. 

Neste programa, verificaremos se o caractere está presente em uma string.

Exemplo

import java.io.*;
  
class GFG {
    public static void main (String[] args) {
        String s="GeeksForGeeks";
      System.out.println(s.indexOf('m')<0?"Character not found":"Character found");
    }
}
Saída
Personagem não encontrado

Aplicação 4: para descobrir se uma substring está presente em String ou não. 

Neste programa, verificaremos se o caractere está presente em uma string.

Exemplo

public class Geeks {
public static void main(String args[])
    {
  
        // Initialising string
        String Str = "Welcome to geeksforgeeks";
  
        // Initialising search string
        String subst = "geeks";
  
        System.out.println(Str.indexOf(subst)>=0?"Substring found at "+Str.indexOf(subst):"Substring not found");
}
}
Saída
Substring encontrado em 11

Aplicação 5: para descobrir se uma entrada é um dígito, uma letra ou um caractere especial.

Neste programa, verificaremos se o caractere está presente em um conjunto predefinido de strings.

Exemplo

class Geek
{
    public static void check(char c)
    {
        if("0123456789".indexOf(c)>=0)
        {
          System.out.print("It is a digit\n");
        }
      else if("[abcdefghijklmnopqrstuvwxyz]".indexOf(Character.toLowerCase(c))>=0)
      {
        System.out.print("It is a Alphabet\n");
      }
      else{
        System.out.print("It is a Special Character\n");
      }
    }
   
  
        // Driver program
    public static void main(String[] args)
    {
      check('1');
      check('a');
      check('@');
        
    }
}
Saída
É um dígito
É um alfabeto
É um personagem especial