String中的“equals()”和“==”
考试考到了,惨痛教训。。。
简单来说,对于基本数据类型的变量,可以直接用==判断内容是否相等;对于类变量,若没有重写过equals()过,equal()和==都是判断其引用地址是否相等。
String test1 = "test"; String test2 = "test"; String test3 = new String(test2); String test4 =new String(test2); blooean result1 = (test1==test2); blooean result2 = (test3==test4);
打印结果是
//true false
在java中,大部分API中的类都重写过了equals()方法,所以功能直接判断其内容是否相等。
String test1 = "test";
String test2 = "test";
String test3 = new String(test2);
String test4 =new String(test2);
boolean result1 = (test1.equals(test2));
boolean result2 = (test3.equals(test4));打印结果
//true true
当自己实现类时,才需要注意重写equals()方法。
海康威视公司福利 1125人发布