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

Stringa Java indiceDi()

Pubblicato nel gruppo Random-IT

Che cos'è la stringa Java indexOf()?

Come sviluppatore Java, devi aver riscontrato la necessità di trovare la posizione di un carattere o di una sottostringa all'interno di una stringa. Java fornisce un metodo integrato chiamato indexOf() nella classe String per aiutarci in questo compito. Il metodo indexOf() in Java è una parte della classe String , ovvero la classe Java String indexOf() , che viene utilizzata per manipolare le stringhe. Il metodo indexOf() in Java restituisce la posizione della prima occorrenza di un carattere o di una sottostringa all'interno di una determinata stringa. Se il carattere o la sottostringa non viene trovata, il metodo restituisce -1.

// Here is the syntax of the String indexOf():
public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
public int indexOf(String str)
public int indexOf(String str, int fromIndex)
Analizziamo i diversi modi in cui possiamo utilizzare il metodo `indexOf()`.

Trovare la posizione di un carattere nella stringa:

Supponiamo di avere una stringa "Hello, world!" . Per trovare la posizione del carattere 'o' nella stringa, possiamo utilizzare il seguente codice:

public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Hello, world!";
// We will use Str.indexOf here
        int position = str.indexOf('o');
        System.out.println("Position of 'o' in the string is: " + position);
    }
}

Produzione

La posizione di 'o' nella stringa è: 4
Nel codice precedente, abbiamo prima dichiarato una stringa "Hello, world!" e quindi utilizzato il metodo indexOf() per trovare la posizione del carattere "o" nella stringa. Il metodo ha restituito la posizione 4, ovvero la prima occorrenza del carattere "o" nella stringa.

Trovare la posizione dei caratteri in una stringa

Ecco un frammento di codice di esempio che dimostra come utilizzare il metodo indexOf() per trovare la posizione dei caratteri in una stringa:

public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Hello, world!";
        // We will use Str.indexOf here
        int position = str.indexOf('o');
        
        while (position >= 0) {
            System.out.println("'o' found at position " + position);
            position = str.indexOf('o', position + 1);
        }
    }
}

Produzione

'o' trovato nella posizione 4 'o' trovato nella posizione 8
Nel codice precedente, abbiamo prima dichiarato una stringa "Hello, world!" e quindi utilizzato il metodo indexOf() per trovare la posizione del carattere "o" nella stringa. Il metodo indexOf() restituisce la posizione della prima occorrenza del carattere nella stringa oppure -1 se il carattere non viene trovato. Abbiamo quindi utilizzato un ciclo while per continuare a cercare il carattere "o" nella stringa chiamando indexOf() con il carattere e la successiva posizione iniziale come argomenti. Ripetiamo questo processo finché indexOf() restituisce -1, indicando che non ci sono più occorrenze del carattere nella stringa. In questo esempio, abbiamo scoperto che il carattere 'o' appare nelle posizioni 4 e 8 nella stringa "Hello, world!".

Trovare la posizione di una sottostringa nella stringa

Supponiamo di avere una stringa "Java è un linguaggio di programmazione popolare" . Per trovare la posizione della sottostringa "programmazione" nella stringa, possiamo utilizzare il seguente codice:

public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Java is a popular programming language";
        // We will use Str.indexOf here
        int position = str.indexOf("programming");
        System.out.println("Position of 'programming' in the string is: " + position);
    }
}

Produzione

La posizione di 'programmazione' nella stringa è: 18
Nel codice precedente, abbiamo prima dichiarato una stringa "Java è un linguaggio di programmazione popolare" e quindi utilizzato il metodo indexOf() per trovare la posizione della sottostringa "programmazione" nella stringa. Il metodo ha restituito la posizione 18, che è la posizione iniziale della sottostringa "programmazione" nella stringa.

Trovare tutte le occorrenze di un carattere o di una sottostringa nella stringa

Supponiamo di avere una stringa "Java è un linguaggio di programmazione popolare. Java è ampiamente utilizzato nello sviluppo web" . Per trovare tutte le occorrenze del carattere 'a' o della sottostringa "Java" nella stringa, possiamo utilizzare il seguente codice:

public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Java is a popular programming language. Java is widely used in web development.";

        int position = -1;


        while ((position = str.indexOf('a', position + 1)) != -1) {
            System.out.println("Found 'a' at position: " + position);
        }

        while ((position = str.indexOf("Java", position + 1)) != -1) {
            System.out.println("Found 'Java' at position: " + position);
        }
    }
}

Produzione

Trovato 'a' alla posizione: 1 Trovato 'a' alla posizione: 3 Trovato 'a' alla posizione: 8 Trovato 'a' alla posizione: 15 Trovato 'a' alla posizione: 23 Trovato 'a' alla posizione: 31 Trovato ' a' alla posizione: 35 Trovato 'a' alla posizione: 41 Trovato 'a' alla posizione: 43 Trovato 'Java' alla posizione: 0 Trovato 'Java' alla posizione: 40
Nel codice precedente, abbiamo prima dichiarato una stringa "Java è un linguaggio di programmazione popolare. Java è ampiamente utilizzato nello sviluppo web" e quindi abbiamo utilizzato il metodo indexOf() per trovare tutte le occorrenze del carattere 'a' o della sottostringa "Java" nella corda. Abbiamo utilizzato un ciclo while per ripetere tutte le occorrenze del carattere o della sottostringa finché il metodo indexOf() non restituisce -1, il che indica che non ci sono più occorrenze del carattere o della sottostringa nella stringa.

Conclusione

In conclusione, il metodo indexOf() in Java è un potente strumento per trovare la posizione di un carattere o di una sottostringa all'interno di una stringa. Utilizzando le diverse varianti del metodo, possiamo facilmente trovare la posizione di un carattere o di una sottostringa in una stringa, partendo da un dato indice o trovando tutte le occorrenze di un carattere o di una sottostringa. È un metodo essenziale per qualsiasi sviluppatore Java che lavora con le stringhe nelle proprie applicazioni.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION