Java中equals方法和==的区别
来源:互联网 发布:js json数组赋值 编辑:程序博客网 时间:2024/05/17 07:24
一般而言,equals是比较对象的内容,而==比较的是对象实例在内存中的地址,为什么说是一般而言,因为对于Object类中的equals方法,其作用和==相同,比较的都是对象在内存中的地址。下面看一些代码来说明。
public boolean equals(Object obj) { return (this == obj); }
以上是JDK中Object类的equals方法源码,直接将obj参数和本身实例做==比较,可以看出在Object中equals方法的作用和==是相同的。
class Test{ private int a=0, b=0; public Test(int a,int b) { // TODO Auto-generated constructor stub this.a=a; this.b=b; }}public class Main { public static void main(String[] args) { Test t1=new Test(1, 2); Test t2=new Test(1, 2); System.out.println("equals result is:"+t1.equals(t2)); System.out.println("== result is:"+(t1==t2)); }}
以上代码定义了一个类Test,其equals方法直接继承自Object类。在main方法中定义了两个变量t1和t2,虽然其内容相同,但是比价的结果均为false,其运行结果如下:
public class Main { public static void main(String[] args) { String s1=new String("123"); String s2=new String("123"); System.out.println("== result is:"+(s1==s2)); System.out.println("equals result is:"+s1.equals(s2)); }}
以上代码是String字符串的比较,String类重写了Object类的equals方法,equals方法比价的是字符串的内容,其运行结果如下:
public class Main { public static void main(String[] args) { String s1="123"; String s2="123"; System.out.println("== result is:"+(s1==s2)); System.out.println("equals result is:"+s1.equals(s2)); }}
如以上代码所示,如String直接赋值而不是通过new来创建,那么s1和s2指向相同的实例,其运行结果均为true,实验结果如下:
阅读全文
0 0
- java中equals方法和“==”的区别
- java中equals方法和“==”的区别:(转)
- java中equals方法和“==”的区别
- java中equals方法和“==”的区别
- JAVA中==和equals方法的区别
- java中equals方法和“==”的区别
- Java中equals方法、==和hashCode的区别
- Java中equals方法和==号的区别
- Java中equals()方法和==的区别
- Java中==和equals()方法的区别
- Java中 ==和equals方法的区别
- Java中equals()方法和“==”的区别
- java中==和equals()方法的区别
- Java中equals方法和==的区别
- Java中==和equals方法的区别
- JAVA中equals方法和==的区别
- Java中equals方法和==的区别
- java中equals方法和“==”的区别:
- 码云使用问题
- Linux-鸟菜-5-目录配置-FHS
- angular中的compile和link函数
- Android完美获取状态栏高度、标题栏高度、编辑区域高度的获取
- 反射---获取Class类的4种方式
- Java中equals方法和==的区别
- JDBC的连接步骤
- iOS-支付宝sdk支付结束跳转不了?【SDK】
- Poedu_Windows_异步IO操作(1)
- 虚拟机 VMware Workstation 12 安装 CentOS 7 图文教程
- servlet的url-pattern匹配规则详细描述
- 树莓派Python实现超声波测距+人体红外传感器+温湿度+LED灯
- BOW和LSH的一点理解
- 写在开始