equals 和== 的区别
来源:互联网 发布:淘宝服装店铺页头图片 编辑:程序博客网 时间:2024/06/06 10:00
1、在基础类型中 == 和equals是没有区别的 都是比较的内存中的地址
2、在复合类型中如String 由于重写了equals方法, 所以比较的是对象的值
例如 String a="123";
String b="123";
System.out.println(a==b); 输出 true
System.out.println(a.equals(b)); 输出true
String c=new String("123");
System.out.println(a==c); 输出false;
System.out.println(a.equals(c));输出true;
为什么 a==b输出 true a==c输出false 这是因为 String 在内存中有一块字符串缓冲区,由于a="123" 已经创建了,当b再引用的时候 就会直接执行已经创建的地址, 但是由于String c=new String("123"); 已经明显的告诉要new 一个 不要原来已经存在的,所以就会在内充中重新创建一个地址,然后值是123 !
0 0
- “=”和“equals()”的区别
- java ==和equals、equals和hashCode的区别
- 关于“==”和“equals”的区别
- 关于Equals 和== 的区别
- equals和==的区别
- equals 和 == 的区别
- equals 和 == 的区别
- ==和Equals的区别
- equals 和 == 的区别
- equals 和 == 的区别
- equals和==的区别
- equals 和 == 的区别
- equals和==的区别
- 关于==和equals的区别
- Equals和“==”的区别
- == 和equals() 的区别
- equals("")和“==”的区别
- equals 和 == 的区别
- windows 下mysql更新用户password异常后导致的问题
- Python基础10 反过头来看看
- Laravel框架分析
- Android进阶系列8-编译时注解框架ButterKnife浅析
- 10039 Railroads
- equals 和== 的区别
- 文件上传和下载——文件上传(一)
- 蓝鸥Unity开发基础——抽象类
- MultiDex分包
- zookeeper的watcher相关
- py学习之路8---循环
- linux目录结构简析
- Memcached简要理解
- python转成pyd方法