Java中==与equals的区别
来源:互联网 发布:javascript复选框全选 编辑:程序博客网 时间:2024/06/11 17:02
==比较两个对象在内存中是不是同一个对象,就是说在内存中存储位置一致。两个String对象存储的值是一样的,但有可能在内存里存储在不同的地方 .
==比较的是引用(内存地址),而equals方法比较的是内容。
public booleanequals(Object obj) 这个方法是由Object对象提供的,可以由子类进行重写。
默认的实现只有当对象和自身进行比较时才会返回true,这个时候和==是等价的。
String, BitSet, Date, 和File都对equals方法进行了重写,对两个String对象 而言,值相等意味着它们包含同样的字符序列。
对于基本类型的包装类来说,值相等意味着对应的基本类型的值一样。
public class EqualsTest { public static void main(String[] args) { String s1 = “abc”; String s2 = s1; String s5 = “abc”; String s3 = new String(”abc”); String s4 = new String(”abc”); System.out.println(”== comparison : ” + (s1 == s5)); System.out.println(”== comparison : ” + (s1 == s2)); System.out.println(”Using equals method : ” + s1.equals(s2)); System.out.println(”== comparison : ” + s3 == s4); System.out.println(”Using equals method : ” + s3.equals(s4)); }}
== comparison : true== comparison : trueUsing equals method : truefalseUsing equals method :true
0 0
- 【java中==与equals的区别】java中==与equals的区别
- java中equals的用法,与“==”的区别
- java中“==”与equals区别
- java中equals与==区别
- Java中"equals()"与"=="区别
- Java中equals()与==区别
- Java中equals与==区别
- java中“==” 与 equals 区别
- java中equals与==的区别
- java中equals() 与==的区别
- java中“==”与“equals”的区别
- java中“==”与“equals”的区别
- Java中==与equals的区别
- java中equals与==的区别
- java中equals与==的区别
- Java中== 与 equals的区别
- java中== 与equals的区别
- java中==与equals的区别
- 地理空间数据格式——OGC-KML
- 模板--------LCA
- Microsoft Visual Studio 工程属性表props/vsprops创建与使用
- Microsoft Visual Studio 文件识别及其用途简述
- 【codevs 1022】覆盖(匈牙利算法)
- Java中==与equals的区别
- 李雅普诺夫稳定性理论
- MUI增加BeeCloud支付集成示例
- 互联网小现象:BAT疯狂投资,网易为何单打独斗?
- BST(C语言)
- AndroidStudio配置百度地图API
- java生成二维码
- jdk安装与环境变量配置
- java.util.AbstractSet学习笔记