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
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 打印机打不出来就是一张白纸怎么办 wps表格下拉数字不递增怎么办 wps表格圈怎么打出来怎么办 手表固定圈掉了怎么办 起来觉得头晕头胀怎么办? 孩子不好好写作业怎么办 孩子考试考差了怎么办 孩子计算题马虎大意怎么办 二年级孩子不认字怎么办 发现计算上的错误怎么办 孩子不好好做作业怎么办 手破了红肿了怎么办呢 老师反应孩子在校粗心胆小怎么办 四年级的学生计算粗心怎么办 老打孩子骂孩子怎么办 站久了脚肿了怎么办 孩子初中了书写越来越潦草怎么办 给孩子自由孩子无法无天怎么办 孩子挑食幼儿园老师该怎么办 老师说孩子挑食家长怎么办 工作中老是粗心不细心怎么办 小孩数学总是特别粗心该怎么办 孩子起范疙瘩的怎么办 做题马虎不认真怎么办 孩子考差了家长怎么办 小孩写作业不认真怎么办 小孩不认真检查作业怎么办 一年级的小孩作业不认真怎么办 一年级学生做题粗心怎么办 一年级的学生做题粗心怎么办 孩子做作业注意力不集中怎么办 小学三年孩子抄答案怎么办 孩子写作业不认真审题怎么办 一年级小孩审题不认真怎么办 孩子审题不认真马虎怎么办 孩子做作业不认真审题怎么办? 考老师考砸了怎么办 重要考试考砸了怎么办 二年级孩子做数学题粗心怎么办 二年级孩子考试粗心怎么办 二年级孩子考试总是粗心怎么办