*What is "== and equals()"?
==:
1. 判断基本类型变量是否相等;
2. 判断引用类型是否指向一个对象;
equals():
判断引用类型变量所指向的值是否相同(String是这个标准,但可重写);
*How to use "== and equals()"?
String str1 = "Hello";
String str2 = "Hello";
//输出false
str1 == str2;
//输出true
str1.equals(str2);
*Why we use "== and equals()"?
这里说一下equals(),这个方法是Object类的,可以重写,重写的意义在于“你可以自己定义相等的标准,你认为怎么是相等,那就怎么是相等”,极端的情况下,你重写这个方法,永远返回一个true,那么怎么比都相等。
*其他:
正确地重写equals方法几个原则:自反性、对称性、传递性、一致性、对任何不是null的x,x.equals(null)一定返回false。
==:
1. 判断基本类型变量是否相等;
2. 判断引用类型是否指向一个对象;
equals():
判断引用类型变量所指向的值是否相同(String是这个标准,但可重写);
*How to use "== and equals()"?
String str1 = "Hello";
String str2 = "Hello";
//输出false
str1 == str2;
//输出true
str1.equals(str2);
*Why we use "== and equals()"?
这里说一下equals(),这个方法是Object类的,可以重写,重写的意义在于“你可以自己定义相等的标准,你认为怎么是相等,那就怎么是相等”,极端的情况下,你重写这个方法,永远返回一个true,那么怎么比都相等。
*其他:
正确地重写equals方法几个原则:自反性、对称性、传递性、一致性、对任何不是null的x,x.equals(null)一定返回false。