Chuỗi là một kiểu dữ liệu được sử dụng để lưu trữ dữ liệu dựa trên văn bản trong Java. Khi làm việc với các chuỗi, bạn có thể gặp trường hợp muốn so sánh hai chuỗi với nhau.
Đó là nơi chuỗi Java equals()
và equalsIgnoreCase()
có các phương thức. equals()
được sử dụng để kiểm tra xem hai chuỗi có bằng nhau hay không và equalsIgnoreCase()
được sử dụng để so sánh xem hai chuỗi có bằng nhau hay không trong khi bỏ qua các trường hợp của chúng.
Hướng dẫn này sẽ hướng dẫn chi tiết, với các ví dụ, cách sử dụng chuỗi equals()
và equalsIgnoreCase()
các phương thức trong Java. Khi đọc xong bài viết này, bạn sẽ trở thành chuyên gia so sánh các chuỗi bằng các phương pháp này trong Java.
Chuỗi Java
Chuỗi được sử dụng để lưu trữ văn bản và có thể bao gồm chữ cái, số, ký hiệu và khoảng trắng. Ví dụ:một chuỗi có thể bao gồm tên của khách hàng tại cửa hàng may hoặc địa chỉ của nhà cung cấp cho cửa hàng may.
Trong Java, các chuỗi được khai báo là một chuỗi các ký tự được đặt giữa các dấu ngoặc kép. Dưới đây là ví dụ về chuỗi Java:
String favoriteCoffeeShop = "Central Perk";
Trong ví dụ này, chúng tôi đã khai báo một biến có tên là favoriteCoffeeShop
và gán cho nó giá trị Central Perk
.
Các đối tượng chuỗi trong Java là bất biến, có nghĩa là khi một chuỗi được tạo, chúng ta cần sử dụng equals()
để so sánh nó với một chuỗi khác. Bây giờ chúng ta đã biết những điều cơ bản về chuỗi, chúng ta có thể tiếp tục thảo luận về chuỗi equals()
và equalsIgnoreCase()
các phương pháp.
Chuỗi Java bằng
Chuỗi Java equals()
Phương thức được sử dụng để so sánh các đối tượng và kiểm tra xem nội dung của hai chuỗi có bằng nhau hay không.
81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.
Sinh viên tốt nghiệp bootcamp trung bình đã dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.
equals()
chấp nhận một tham số:chuỗi bạn muốn so sánh với chuỗi khác. Đây là cú pháp cho chuỗi equals()
phương pháp:
stringName.equals(string2Name);
Hãy phân tích điều này:
- stringName là tên của chuỗi ban đầu mà bạn muốn so sánh với string2Name
- bằng () là phương thức dùng để so sánh stringName với string2Name.
- string2Name là chuỗi mà bạn muốn so sánh với stringName.
equals()
phương thức trả về một giá trị boolean dựa trên việc các chuỗi có bằng nhau hay không. Vì vậy, nếu hai chuỗi bằng nhau, giá trị true được trả về; nếu không, false được trả về.
Chuỗi equals()
phương pháp phân biệt chữ hoa chữ thường. Vì vậy, nếu hai chuỗi chứa các ký tự giống nhau nhưng sử dụng các trường hợp khác nhau, thì equals()
phương thức sẽ trả về false.
Ví dụ chuỗi bằng Java
Giả sử chúng tôi đang điều hành một khách sạn và chúng tôi đang viết một chương trình để hợp lý hóa giai đoạn nhận phòng của mình. Khi khách hàng nhận phòng, họ nên cung cấp tên và thông tin đặt phòng của họ. Chúng tôi sẽ so sánh tham chiếu đặt phòng mà khách hàng cung cấp với tham chiếu được lưu với tên của họ trong hồ sơ, để xác minh danh tính của khách hàng.
Chúng tôi có thể sử dụng mã này để so sánh tham chiếu đặt phòng trong hồ sơ với tham chiếu đặt phòng do khách hàng cung cấp:
class Main { public static void main(String args[]) { String onFileBookingReference = "#ST2920198"; String customerGivenBookingReference = "#ST2920198"; boolean areEqual = onFileBookingReference.equals(customerGivenBookingReference); if (areEqual == true) { System.out.println("This booking is confirmed."); } else { System.out.println("The booking reference provided does not match the one on-file."); } } }
Mã của chúng tôi trả về:
This booking is confirmed.
Hãy chia nhỏ mã của chúng tôi:
- Chúng tôi khai báo một biến có tên là
onFileBookingReference
nơi lưu trữ tham chiếu đặt phòng được liên kết với tên của khách hàng. - Chúng tôi khai báo một biến có tên là
customerGivenBookingReference
nơi lưu trữ thông tin đặt phòng do khách hàng cung cấp cho nhân viên bán hàng tại quầy làm thủ tục. - Chúng tôi sử dụng
equals()
phương pháp kiểm tra xemonFileBookingReference
bằng vớicustomerGivenBookingReference
và gán kết quả của phương thức cho biến areEqual. -
if
câu lệnh được sử dụng để kiểm tra xemareEqual
bằng true.- Nếu areEqual bằng true, thông báo
This booking is confirmed
. được in ra bảng điều khiển. - Nếu areEqual bằng false, thông báo
The booking reference provided does not match the one on-file
. được in ra bảng điều khiển.
- Nếu areEqual bằng true, thông báo
Trong ví dụ này, khách hàng đã cung cấp thông tin tham chiếu đặt phòng chính xác, vì vậy chương trình của chúng tôi đã xác nhận đặt phòng của họ.
Chuỗi Java equalsIgnoreCase
Chuỗi equalsIgnoreCase()
phương thức được sử dụng để so sánh hai chuỗi trong khi bỏ qua trường hợp của chúng. equalsIgnoreCase()
sử dụng cùng một cú pháp với equals()
, như sau:
stringName.equalsIgnoreCase(string2Name);
Bây giờ, hãy xem qua một ví dụ để minh họa phương pháp này trong thực tế.
Giả sử chúng ta muốn viết một chương trình để kiểm tra xem tên của khách hàng có khớp với tên được liên kết với tham chiếu đặt phòng được cung cấp hay không. Việc kiểm tra này phải phân biệt chữ hoa chữ thường để đảm bảo rằng lỗi viết hoa không làm mất đặt chỗ của nhân viên làm thủ tục.
Chúng tôi có thể sử dụng mã sau để so sánh tên của khách hàng với tên được liên kết với tham chiếu đặt phòng của họ:
class Main { public static void main(String args[]) { String onFileName = "Gregory Lamont"; String customerName = "gregory lamont"; boolean areEqual = onFileName.equalsIgnoreCase(customerName); if (areEqual == true) { System.out.println("This booking is confirmed."); } else { System.out.println("The customer name provided does not match the one on-file."); } } } When we run our code, the following response is returned: This booking is confirmed.
Khi chúng tôi chạy mã của mình, phản hồi sau được trả về:
This booking is confirmed.
Tên khách hàng được lưu trong hồ sơ là Gregory Lamont
, nhưng tên khách hàng do nhân viên bán hàng nhập là gregory lamont
. Nếu chúng tôi sử dụng equals()
phương pháp, các chuỗi này sẽ không được coi là giống nhau vì các trường hợp của chúng khác nhau.
Tuy nhiên, trong ví dụ này, chúng tôi đã sử dụng equalsIgnoreCase()
phương thức này bỏ qua các trường hợp mà các ký tự của chuỗi được viết.
Kết luận
Chuỗi equals()
phương pháp được sử dụng để kiểm tra xem hai chuỗi có chính xác bằng nhau hay không. equalsIgnoreCase()
phương pháp được sử dụng để kiểm tra xem hai chuỗi có bằng nhau không, bất kể trường hợp của chúng.
Hướng dẫn này hướng dẫn cách sử dụng chuỗi equals()
và equalsIgnoreCase()
các phương thức trong Java, có tham chiếu đến hai ví dụ. Bây giờ bạn đã sẵn sàng để bắt đầu so sánh các chuỗi trong Java bằng cách sử dụng equals()
và equalsIgnoreCase()
như một người chuyên nghiệp!