So sánh chuỗi trong java là một trong những từ khóa được search nhiều nhất trên google về chủ đề so sánh chuỗi trong java. Trong bài viết này, xaydungweb.vn sẽ viết bài viết nói về làm thế nào để so sánh chuỗi trong java một cách nhanh nhất.
Làm thế nào để so sánh chuỗi trong java một cách nhanh nhất
So sánh chuỗi trong java
Chúng ta đủ sức so sánh chuỗi trong java trên cơ sở nội dung và tham chiếu của nó.
Nó được sử dụng trong xác thực (bởi phương pháp equals()), sắp đặt (theo công thức compareTo()), so sánh tham chiếu(với toán tử ==), vv
Có ba mẹo để so sánh chuỗi trong java:
- dùng công thức equals()
- sử dụng toán tử ==
- dùng công thức compareTo()
1) So sánh chuỗi bằng phương thức equals()
phương pháp equals() được sử dụng để so sánh nội dung của 2 chuỗi. Lớp String phân phối 2 mẹo equals():
- public boolean equals(Object another): so sánh 2 chuỗi có phân biệt chữ hoa, chữ thường.
- public boolean equalsIgnoreCase(String another): so sánh 2 chuỗi k phân biệt chữ hoa, chữ thường.
gợi ý 1:
1 2 3 4 5 6 7 8 9 10 11 | public class Teststringcomparison1 public static void main(String args[]) String s1 = "Hello" ; String s2 = "Hello" ; String s3 = new String( "Hello" ); String s4 = "Hallo" ; System.out.println(s1.equals(s2)); //true System.out.println(s1.equals(s3)); //true System.out.println(s1.equals(s4)); //false |
Output:
true true false
gợi ý 2:
1 2 3 4 5 6 7 8 9 | public class Teststringcomparison2 public static void main(String args[]) String s1 = "Hello" ; String s2 = "HELLO" ; System.out.println(s1.equals(s2)); //false System.out.println(s1.equalsIgnoreCase(s2)); //true |
Output:
false true
2) So sánh chuỗi bằng toán tử ==
Toán tử == được sử dụng để so sánh tham chiếu (không phải giá trị) của 2 chuỗi.
ví dụ 3:
1 2 3 4 5 6 7 8 9 | public class Teststringcomparison3 public static void main(String args[]) String s1 = "Hello" ; String s2 = "Hello" ; String s3 = new String( "Hello" ); System.out.println(s1 == s2); //true (vì cả 2 cùng tham chiếu instance giống nhau) System.out.println(s1 == s3); //false(vì s3 tham chiếu instance mà không ở trong Pool) |
Output:
true false
3) So sánh chuỗi bằng phương pháp compareTo()
cách thức compareTo () so sánh các giá trị theo thứ tự từ điển và trả về một trị giá số nguyên mô tả nếu chuỗi trước hết nhỏ hơn, bằng hoặc lớn hơn chuỗi thứ hai.
Giả sử s1 và s2 là hai biến chuỗi. Nếu:
- s1 == s2 : 0
- s1 > s2 : giá trị > 0
- s1 < s2 : trị giá < 0
gợi ý 4:
1 2 3 4 5 6 7 8 | public static void main(String args[]) String s1 = "Hello" ; String s2 = "Hello" ; String s3 = "Java" ; System.out.println(s1.compareTo(s2)); System.out.println(s1.compareTo(s3)); System.out.println(s3.compareTo(s1)); |
Output:
0 -2 2