equals和==的区别
发布时间:
2023-05-18 13:50:40
在Java中,equals()和==都是用于比较对象的运算符,但它们的作用不同。
1. equals()方法:equals()方法是Object类中的一个方法,用于比较两个对象是否相等。它会比较两个对象的内存地址是否相同,即判断两个对象是否是同一个对象。如果两个对象是同一个对象,则返回true;否则返回false。例如:
String str1 = "hello";
String str2 = "hello";
System.out.println(str1.equals(str2)); // 输出true
2. ==运算符:==运算符也是Object类中的一个运算符,用于比较两个对象的引用是否相等。它会比较两个对象的内存地址是否相同,即判断两个对象是否是同一个对象。如果两个对象是同一个对象,则返回true;否则返回false。例如:
String str1 = "hello";
String str2 = "hello";
System.out.println(str1 == str2); // 输出true
需要注意的是,==运算符比较的是两个对象的引用是否相等,而不是它们的值是否相等。因此,如果两个对象是不同的对象,但是它们的值相等,那么使用==运算符比较的结果是false。例如:
String str1 = "hello";
String str2 = new String("hello");
System.out.println(str1 == str2); // 输出false
总之,equals()方法用于比较两个对象的值是否相等,而==运算符用于比较两个对象的引用是否相等。
上一篇:
如何解决过度拟合
下一篇:
static属性内存特点