Trong lập trình Java, để so sánh hai chuỗi, bạn có thể sử dụng các phương thức cơ bản có sẵn trong lớp String
. Có hai phương thức chính để so sánh chuỗi:
equals(Object obj)
: Phương thức này được sử dụng để so sánh nội dung của hai chuỗi. Nó trả vềtrue
nếu hai chuỗi có cùng nội dung và trả vềfalse
nếu hai chuỗi khác nhau.compareTo(String anotherString)
: Phương thức này được sử dụng để so sánh hai chuỗi dựa trên thứ tự từ điển. Nó trả về một số nguyên dương nếu chuỗi gọi phương thức đứng trước chuỗianotherString
, trả về 0 nếu hai chuỗi bằng nhau và trả về một số nguyên âm nếu chuỗi gọi phương thức đứng sau chuỗianotherString
.
Dưới đây là ví dụ minh họa về cách sử dụng các phương thức để so sánh chuỗi:
java
public class StringComparisonExample {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "World";
String str3 = "Hello";
String str4 = "hello";
// Sử dụng phương thức equals() để so sánh nội dung chuỗi
System.out.println("str1 equals str2: " + str1.equals(str2)); // false
System.out.println("str1 equals str3: " + str1.equals(str3)); // true
System.out.println("str1 equals str4: " + str1.equals(str4)); // false
// Sử dụng phương thức compareTo() để so sánh chuỗi theo thứ tự từ điển
System.out.println("str1 compareTo str2: " + str1.compareTo(str2)); // negative value
System.out.println("str1 compareTo str3: " + str1.compareTo(str3)); // 0
System.out.println("str1 compareTo str4: " + str1.compareTo(str4)); // positive value
}
}
Output sẽ là:
yaml
str1 equals str2: false
str1 equals str3: true
str1 equals str4: false
str1 compareTo str2: -15
str1 compareTo str3: 0
str1 compareTo str4: 32
Như bạn có thể thấy trong ví dụ trên:
- Phương thức
equals()
trả vềtrue
nếu hai chuỗi có cùng nội dung (“Hello” và “Hello” trong trường hợp thứ ba) và trả vềfalse
nếu nội dung của hai chuỗi khác nhau. - Phương thức
compareTo()
trả về một số nguyên âm nếu chuỗi gọi phương thức đứng trước chuỗi được so sánh (“Hello” và “World” trong trường hợp đầu tiên), trả về 0 nếu hai chuỗi bằng nhau (“Hello” và “Hello” trong trường hợp thứ hai), và trả về một số nguyên dương nếu chuỗi gọi phương thức đứng sau chuỗi được so sánh (“Hello” và “hello” trong trường hợp thứ ba).