CodeGym /Blog Java /Ngẫu nhiên /Chỉ mục chuỗi JavaOf()

Chỉ mục chuỗi JavaOf()

Xuất bản trong nhóm

Chuỗi Java indexOf() là gì?

Là một nhà phát triển Java, chắc hẳn bạn đã từng gặp nhu cầu tìm vị trí của một ký tự hoặc chuỗi con trong một chuỗi. Java cung cấp một phương thức có sẵn có tên là indexOf() trong lớp String để giúp chúng ta thực hiện nhiệm vụ này. Phương thức indexOf() trong Java là một phần của lớp String , tức là lớp Java String indexOf() , được sử dụng để thao tác các chuỗi. Phương thức indexOf () trong Java trả về vị trí xuất hiện đầu tiên của một ký tự hoặc chuỗi con trong một chuỗi nhất định. Nếu không tìm thấy ký tự hoặc chuỗi con, phương thức trả về -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)
Hãy cùng tìm hiểu những cách khác nhau mà chúng ta có thể sử dụng phương thức `indexOf()`.

Tìm vị trí của một ký tự trong chuỗi:

Giả sử chúng ta có một chuỗi "Xin chào thế giới!" . Để tìm vị trí của ký tự 'o' trong chuỗi, chúng ta có thể sử dụng đoạn mã sau:
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);
    }
}

đầu ra

Vị trí của 'o' trong chuỗi là: 4
Trong đoạn mã trên, lần đầu tiên chúng ta khai báo một chuỗi "Xin chào thế giới!" rồi sử dụng phương thức indexOf() để tìm vị trí của ký tự 'o' trong chuỗi. Phương thức trả về vị trí 4, đây là lần xuất hiện đầu tiên của ký tự 'o' trong chuỗi.

Tìm vị trí các ký tự trong chuỗi

Sau đây là đoạn mã ví dụ minh họa cách sử dụng phương thức indexOf() để tìm vị trí của các ký tự trong chuỗi:
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);
        }
    }
}

đầu ra

'o' được tìm thấy ở vị trí 4 'o' được tìm thấy ở vị trí 8
Trong đoạn mã trên, lần đầu tiên chúng ta khai báo một chuỗi "Xin chào thế giới!" rồi sử dụng phương thức indexOf() để tìm vị trí của ký tự 'o' trong chuỗi. Phương thức indexOf () trả về vị trí xuất hiện đầu tiên của ký tự trong chuỗi hoặc -1 nếu không tìm thấy ký tự đó. Sau đó, chúng tôi sử dụng vòng lặp while để tiếp tục tìm kiếm ký tự 'o' trong chuỗi bằng cách gọi indexOf() với ký tự và vị trí bắt đầu tiếp theo làm đối số. Chúng ta lặp lại quá trình này cho đến khi indexOf() trả về -1, cho biết rằng không còn ký tự nào xuất hiện trong chuỗi nữa. Trong ví dụ này, chúng tôi nhận thấy ký tự 'o' xuất hiện ở vị trí 4 và 8 trong chuỗi "Hello, world!".

Tìm vị trí của chuỗi con trong chuỗi

Giả sử chúng ta có một chuỗi "Java là ngôn ngữ lập trình phổ biến" . Để tìm vị trí của chuỗi con "lập trình" trong chuỗi, chúng ta có thể sử dụng đoạn mã sau:
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);
    }
}

đầu ra

Vị trí của “lập trình” trong chuỗi là: 18
Trong đoạn mã trên, trước tiên chúng ta khai báo một chuỗi "Java là ngôn ngữ lập trình phổ biến" và sau đó sử dụng phương thức indexOf() để tìm vị trí của chuỗi con "lập trình" trong chuỗi. Phương thức trả về vị trí 18, là vị trí bắt đầu của chuỗi con "lập trình" trong chuỗi.

Tìm tất cả các lần xuất hiện của một ký tự hoặc chuỗi con trong chuỗi

Giả sử chúng ta có một chuỗi "Java là ngôn ngữ lập trình phổ biến. Java được sử dụng rộng rãi trong phát triển web" . Để tìm tất cả các lần xuất hiện của ký tự 'a' hoặc chuỗi con "Java" trong chuỗi, chúng ta có thể sử dụng đoạn mã sau:
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);
        }
    }
}

đầu ra

Tìm thấy 'a' ở vị trí: 1 Tìm thấy 'a' ở vị trí: 3 Tìm thấy 'a' ở vị trí: 8 Đã tìm thấy 'a' ở vị trí: 15 Tìm thấy 'a' ở vị trí: 23 Đã tìm thấy 'a' ở vị trí: 31 Đã tìm thấy 'a' ở vị trí: 35 Tìm thấy 'a' ở vị trí: 41 Đã tìm thấy 'a' ở vị trí: 43 Đã tìm thấy 'Java' ở vị trí: 0 Đã tìm thấy 'Java' ở vị trí: 40
Trong đoạn mã trên, trước tiên chúng ta khai báo một chuỗi "Java là ngôn ngữ lập trình phổ biến. Java được sử dụng rộng rãi trong phát triển web" và sau đó sử dụng phương thức indexOf() để tìm tất cả các lần xuất hiện của ký tự 'a' hoặc chuỗi con "Java" trong chuỗi. Chúng tôi đã sử dụng vòng lặp while để lặp lại tất cả các lần xuất hiện của ký tự hoặc chuỗi con cho đến khi phương thức indexOf() trả về -1, điều này cho biết rằng không còn lần xuất hiện nào của ký tự hoặc chuỗi con trong chuỗi.

Phần kết luận

Tóm lại, phương thức indexOf() trong Java là một công cụ mạnh mẽ để tìm vị trí của một ký tự hoặc chuỗi con trong một chuỗi. Bằng cách sử dụng các biến thể khác nhau của phương thức, chúng ta có thể dễ dàng tìm thấy vị trí của một ký tự hoặc chuỗi con trong một chuỗi, bắt đầu từ một chỉ mục nhất định hoặc tìm tất cả các lần xuất hiện của một ký tự hoặc chuỗi con. Đây là một phương pháp cần thiết cho bất kỳ nhà phát triển Java nào làm việc với các chuỗi trong ứng dụng của họ.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION