CodeGym /Java Blog /Random-IT /Stringa Java metodo lastIndexOf()
John Squirrels
Livello 41
San Francisco

Stringa Java metodo lastIndexOf()

Pubblicato nel gruppo Random-IT
Il metodo lastIndexOf() restituisce la posizione dell'ultima occorrenza di un carattere specificato o di una sottostringa in una stringa. Immagina di avere una specie di testo lungo, o meglio una lunga riga. Può essere, ad esempio, una lettera e devi trovare il luogo in cui avviene l'ultima chiamata al destinatario con il nome che già conosci. Per questi casi, il metodo indexOf della classe Java String è molto adatto. Se hai bisogno della prima occorrenza di un carattere in una stringa, puoi usare il metodo indexOf() , è molto simile a lastIndexOf() . Esistono quattro varianti di lastIndexOf()metodo. Avere quattro metodi con lo stesso nome ma parametri diversi è possibile a causa dell'overload del metodo. Di seguito esamineremo tutte e quattro le varianti di questo metodo con esempi.

lastIndexOf(int ch)

Questo metodo restituisce l'indice dell'ultima occorrenza del carattere nella sequenza di caratteri.

Sintassi del metodo


int lastIndexOf(int ch)
Parametro: ch : un carattere.

Esempio di codice


public class LastIndexOf1 {

       public static void main(String args[])
       {
          //letter to find index in String
           char letter = 'd';
           //String to find an index of a letter
           String myString = "This is major Tom to ground control, do you copy";
           //The index of last appearance of d will be printed
           System.out.println("Last Index of d = " + myString.lastIndexOf(letter));
       }
}
L'uscita è:
Ultimo indice di d = 37
Se il carattere che stiamo cercando non è nella nostra stringa, il metodo restituisce -1:

public class LastIndexOf1 {

       public static void main(String args[])
       {
           char letter = 'z';
           String myString = "This is major Tom to ground control, do you copy";
           System.out.println("Last Index of z = " + myString.lastIndexOf(letter));
       }
}
L'uscita è:
Ultimo indice di z = -1

lastIndexOf​(int ch, int fromIndex)

lastIndexOf(int ch, int fromIndex) : se questo carattere è rappresentato nella stringa, questo metodo restituisce l'indice dell'ultima occorrenza del carattere ch, effettuando una ricerca all'indietro a partire dall'indice specificato. se questo carattere non è rappresentato nella sottostringa, restituisce -1.

Sintassi del metodo


public int lastIndexOf(int ch, int fromIndex)
Parametri: ch : un carattere. fromIndex : l'indice da cui iniziare la ricerca.

Esempi di codice di lastIndexOf(int ch, int fromIndex)


public class LastIndexOf2 {

   public static void main(String args[])
   {
       //letter to find index in String
       char letter = 'o';
       //String to find an index of a letter
       String myString = "This is major Tom to ground control, do you copy";
       //The index of last appearance of o before 20th symbol will be printed
       System.out.println("Last Index of o = " + myString.lastIndexOf(letter, 20));
   }
}
L'uscita è:
Ultimo indice di o = 19
Se, passando dall'indice all'inizio della riga, il carattere non viene incontrato, il metodo restituirà -1:

public class LastIndexOf2 {

   public static void main(String args[])
   {
       char letter = 'o';
       String myString = "This is major Tom to ground control, do you copy";
       System.out.println("Last Index of o = " + myString.lastIndexOf(letter, 10));
   }
}
L'uscita è:
Ultimo indice di o = -1

lastIndexOf(String str)

lastIndexOf(String str) : questa variazione del metodo accetta una stringa come argomento e restituisce l'indice all'interno di questa stringa della prima occorrenza della sottostringa specificata. Se non si verifica come una sottostringa, il metodo restituisce -1.

Sintassi del metodo


public int lastIndexOf(String str)
Parametri: str : una stringa.

Esempi di codice di lastIndexOf(String str)


public class LastIndexOf3 {
   public static void main(String args[])
   {      
       String myString = "This is major Tom to ground control, do you copy";
       System.out.println( myString.lastIndexOf("Tom"));
   }
}
L'uscita è:
14
Se non esiste tale sottostringa, il metodo restituisce -1. Proviamo a trovare un indice dell'inizio della sottostringa “tom”.

public class LastIndexOf3 {
   public static void main(String args[])
   {

       String myString = "This is major Tom to ground control, do you copy";
       System.out.println( myString.lastIndexOf("tom"));
   }
}
Ricorda che "T" e 't" sono simboli diversi, quindi non c'è "tom" in questa stringa. Ecco l'output:
-1

lastIndexOf(String str, int daIndex)

lastIndexOf(String str, int fromIndex) . Questa variante del metodo restituisce l'indice all'interno di questa stringa dell'ultima occorrenza della sottostringa specificata, effettuando una ricerca all'indietro a partire dall'indice specificato.

Sintassi del metodo


public int lastIndexOf(String str, int beg)
Parametri str : una stringa. fromIndex : l'indice da cui iniziare la ricerca.

Esempi di codice di lastIndexOf(String str, int fromIndex)

Proviamo a trovare l'indice dell'ultima occorrenza della sottostringa “ro” nella stringa “This is major Tom to ground control, do you copy”. La prima volta percorreremo l'intera stringa, la seconda volta partiremo dal carattere con indice 25 (come ricordiamo, con il vincolo upper, la ricerca dell'indice va dalla fine all'inizio).

public class LastIndexOf4 {
   public static void main(String[] args) {
       String myString = "This is major Tom to ground control, do you copy";
       System.out.println( myString.lastIndexOf("ro"));
       System.out.println(myString.lastIndexOf("ro",25));
   }
}
L'uscita è:
32 22
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION