CodeGym /Blog Java /rawak /Java String indexOf()
John Squirrels
Tahap
San Francisco

Java String indexOf()

Diterbitkan dalam kumpulan

Apakah Java String indexOf()?

Sebagai pembangun Java, anda mesti menemui keperluan untuk mencari kedudukan aksara atau subrentetan dalam rentetan. Java menyediakan kaedah terbina dalam yang dipanggil indexOf() dalam kelas String untuk membantu kami dengan tugas ini. Kaedah indexOf () dalam Java ialah sebahagian daripada kelas String , iaitu Java String class indexOf() , yang digunakan untuk memanipulasi rentetan. Kaedah indexOf () dalam Java mengembalikan kedudukan kejadian pertama aksara atau subrentetan dalam rentetan tertentu. Jika aksara atau subrentetan tidak dijumpai, kaedah mengembalikan -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)
Mari kita selami cara berbeza yang boleh kita gunakan kaedah `indexOf()`.

Mencari kedudukan watak dalam rentetan:

Katakan kita mempunyai rentetan "Hello, dunia!" . Untuk mencari kedudukan aksara 'o' dalam rentetan, kita boleh menggunakan kod berikut:
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);
    }
}

Pengeluaran

Kedudukan 'o' dalam rentetan ialah: 4
Dalam kod di atas, kami mula-mula mengisytiharkan rentetan "Hello, dunia!" dan kemudian menggunakan kaedah indexOf() untuk mencari kedudukan aksara 'o' dalam rentetan. Kaedah mengembalikan kedudukan 4, yang merupakan kejadian pertama aksara 'o' dalam rentetan.

Mencari kedudukan aksara dalam rentetan

Berikut ialah contoh coretan kod yang menunjukkan cara menggunakan kaedah indexOf() untuk mencari kedudukan aksara dalam rentetan:
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);
        }
    }
}

Pengeluaran

'o' ditemui pada kedudukan 4 'o' ditemui pada kedudukan 8
Dalam kod di atas, kami mula-mula mengisytiharkan rentetan "Hello, dunia!" dan kemudian menggunakan kaedah indexOf() untuk mencari kedudukan aksara 'o' dalam rentetan. Kaedah indexOf() mengembalikan kedudukan kejadian pertama aksara dalam rentetan, atau -1 jika aksara tidak ditemui. Kami kemudian menggunakan gelung sementara untuk terus mencari aksara 'o' dalam rentetan dengan memanggil indexOf() dengan aksara dan kedudukan permulaan seterusnya sebagai argumen. Kami mengulangi proses ini sehingga indexOf() mengembalikan -1, menunjukkan bahawa tiada lagi kejadian aksara dalam rentetan. Dalam contoh ini, kami mendapati bahawa aksara 'o' muncul pada kedudukan 4 dan 8 dalam rentetan "Hello, dunia!".

Mencari kedudukan subrentetan dalam rentetan

Katakan kita mempunyai rentetan "Java is a popular programming language" . Untuk mencari kedudukan subrentetan "pengaturcaraan" dalam rentetan, kita boleh menggunakan kod berikut:
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);
    }
}

Pengeluaran

Kedudukan 'pengaturcaraan' dalam rentetan ialah: 18
Dalam kod di atas, kami mula-mula mengisytiharkan rentetan "Java ialah bahasa pengaturcaraan yang popular" dan kemudian menggunakan kaedah indexOf() untuk mencari kedudukan subrentetan "pengaturcaraan" dalam rentetan. Kaedah ini mengembalikan kedudukan 18, iaitu kedudukan permulaan "pengaturcaraan" subrentetan dalam rentetan.

Mencari semua kemunculan aksara atau subrentetan dalam rentetan

Katakan kita mempunyai rentetan "Java ialah bahasa pengaturcaraan yang popular. Java digunakan secara meluas dalam pembangunan web" . Untuk mencari semua kemunculan aksara 'a' atau subrentetan "Java" dalam rentetan, kita boleh menggunakan kod berikut:
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);
        }
    }
}

Pengeluaran

Menjumpai 'a' pada kedudukan: 1 Menjumpai 'a' pada kedudukan: 3 Menjumpai 'a' pada kedudukan: 8 Menjumpai 'a' pada kedudukan: 15 Menjumpai 'a' pada kedudukan: 23 Menjumpai 'a' pada kedudukan: 31 Menjumpai ' a' pada kedudukan: 35 Menjumpai 'a' pada kedudukan: 41 Menjumpai 'a' pada kedudukan: 43 Menjumpa 'Java' pada kedudukan: 0 Menjumpai 'Java' pada kedudukan: 40
Dalam kod di atas, kami mula-mula mengisytiharkan rentetan "Java ialah bahasa pengaturcaraan yang popular. Java digunakan secara meluas dalam pembangunan web" dan kemudian menggunakan kaedah indexOf() untuk mencari semua kemunculan aksara 'a' atau subrentetan "Java" dalam rentetan. Kami menggunakan gelung sementara untuk mengulangi semua kejadian aksara atau subrentetan sehingga kaedah indexOf() mengembalikan -1, yang menunjukkan bahawa tiada lagi kejadian aksara atau subrentetan dalam rentetan.

Kesimpulan

Kesimpulannya, kaedah indexOf() dalam Java ialah alat yang berkuasa untuk mencari kedudukan aksara atau subrentetan dalam rentetan. Dengan menggunakan variasi kaedah yang berbeza, kita boleh mencari kedudukan aksara atau subrentetan dengan mudah dalam rentetan, bermula daripada indeks yang diberikan atau mencari semua kemunculan aksara atau subrentetan. Ia adalah kaedah penting untuk mana-mana pembangun Java yang bekerja dengan rentetan dalam aplikasi mereka.
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION