Tôi nghĩ vấn đề này trong
Java vẫn còn nhiều bạn chưa phân biệt rõ sự khác nhau giữa toán tử “==” và
phương thức equal() trong Java, đặc biệt là khi so sánh chuỗi String trong
Java. Hôm nay mình viết bài này để mọi người tham khảo và góp ý.
VD1: Giả sử tôi có đoạn code như sau:
String a = new String(“abc”);
String b = new String(“abc”);
System.out.println(“a==b ? ”+ (a==b));// kết quả: a==b?false
System.out.println(“a.equals(b)?” + a.equals(b));// kết quả e.quals(b)?true
Vậy tại sao kết quả lại khác nhau?
Trong JAVA, có 2 kiểu biến:...