CodeGym /Blog Java /Ngẫu nhiên /Chuỗi Java chứa () Phương thức

Chuỗi Java chứa () Phương thức

Xuất bản trong nhóm
Hàm này được thiết kế đặc biệt để kiểm tra xem một chuỗi có 'chứa' một chuỗi khác hay không. Nếu bạn chưa quen với điều này, bạn có thể sẽ sử dụng nó để tìm một 'ký tự'. Nhưng nó sẽ không phục vụ mục đích. Trong bài viết này, chúng ta sẽ giải quyết cách java.lang.String.contains() được sử dụng, triển khai và những ngoại lệ nào có thể phát sinh nếu không được sử dụng cẩn thận.

Phương thức chứa () là gì?

Bạn có thể sử dụng phương thức chứa(Khóa chuỗi) để “ tìm ” xem “ khóa ” chuỗi nhất định có tồn tại trong một chuỗi nhất định hay không. Nếu “key” được tìm thấy, “true” được trả về. Khác bạn sẽ nhận được một "sai".Chuỗi Java chứa () Phương thức - 1

Thực hiện nội bộ

Phương pháp này đã được triển khai bởi java.lang.String . Bạn không cần phải tự thực hiện điều này. Đây là một lời giải thích nhanh chóng về nó cho sự hiểu biết của bạn.

public class ContainsMethod 
{
    public boolean contains(CharSequence key) 
    {  
        return indexOf(key.toString()) > -1;  
    } 
} 

Giải thích mã

phương thức contains() , lấy CharSequence làm tham số đầu vào. Cái này sau này được chuyển đổi thành "Chuỗi". Sau đó, biểu thức này được tính indexOf(key.toString()) > -1; . Điều đó có nghĩa là, nếu tìm thấy “khóa” đó ở bất kỳ chỉ mục nào ( “0” hoặc cao hơn) thì “true” sẽ được trả về. Và nếu không tìm thấy khóa, thì sẽ trả về "false".

Làm thế nào để sử dụng phương thức chứa()?

Đây là cách bạn có thể sử dụng nó.

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

	String input = "A brown fox jumped over a lazy dog.";

	// check the containing strings
	System.out.println("input.contains(bro) = " + input.contains("bro"));
	System.out.println("input.contains(brown) = " + input.contains("brown"));
	System.out.println("input.contains(Brown) = " + input.contains("Brown"));

	System.out.println("input.contains(fox) = " + input.contains("fox"));
	System.out.println("input.contains(xof) = " + input.contains("xof"));
		
	System.out.println("input.contains(dog) = " + input.contains("dog"));
	System.out.println("input.contains(lazyy) = " + input.contains("lazyy"));
	System.out.println("input.contains(jumping) = " + input.contains("jumping"));
    }
}
đầu ra
input.contains(bro) = true input.contains(nâu) = true input.contains(Brown) = false // false vì phân biệt chữ hoa chữ thường input.contains(fox) = true input.contains(xof) = false // false vì thứ tự phải giống nhau input.contains(dog) = true input.contains(lazyy) = false // false vì không tìm thấy toàn bộ chuỗi con input.contains(nhảy) = false

Giải thích mã

Xin lưu ý, phương pháp này phân biệt chữ hoa chữ thường đối với các tham số đầu vào. Vì vậy, trong đoạn mã trên, bạn có thể quan sát khi bạn tìm kiếm “nâu” được trả về đúng , trong khi sai được trả về cho “Nâu”. Ngoài ra, bạn sẽ nhận được giá trị đúng nếu tìm thấy “fox” và sai đối với “xof” hoặc “oxf” vì thứ tự các ký tự cần phải giống nhau. Cuối cùng, nếu bạn tìm thấy “jump” hoặc “jumped”, bạn sẽ nhận được giá trị đúng vì toàn bộ tham số có trong chuỗi “ đầu vào ”. Trong khi đó, nếu bạn kiểm tra “nhảy” thì trả về sai vì không tìm thấy toàn bộ khóa (“nhảy”).

Chăm sóc ngoại lệ

Phương thức java.lang.String.contains() dẫn đến Ngoại lệ con trỏ Null nếu bạn quên khởi tạo chuỗi tham số với một số giá trị cụ thể.

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

      String input = "Here is a test string.";
      String test = null;

	// check what happens if you look for a null string 
	System.out.println("input.contains(test) = " + input.contains(test));
	}
}
đầu ra

Exception in thread "main" java.lang.NullPointerException
	at java.lang.String.contains(String.java:2133)
	at ContainsMethod.main(ContainsMethod.java:8)

Phần kết luận

Phương thức Chứa () cung cấp một tiện ích java tiện dụng để tìm bất kỳ chuỗi ký tự hoặc chuỗi nào. Chúng tôi hy vọng vào cuối bài đăng này, bạn đã quen với việc sử dụng và triển khai nó. Để hiểu rõ hơn nữa, bạn được khuyến khích xắn tay áo lên và bắt tay vào làm. Tạo mã không có lỗi đi kèm với nỗ lực nhất quán. Vì vậy, hãy để có được nó guys! Bạn luôn được hoan nghênh quay lại đây khi gặp khó khăn. Mã hóa vui vẻ. :)
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION