java中“==”与equals区别

来源:互联网 发布:守望先锋看数据 编辑:程序博客网 时间:2024/06/08 19:30

1= =操作符:

       第一种情形:比较两个变量的值是否相等。    

   

    int a = 5;    int b = 5;    System.out.println(a==b);//true     

      

     第二种情形:比较两个变量是否指向同一个对象。

 

    int[] a = new int[3];    int[] b = new int[3];    System.out.println(a==b);  //false    System.out.println(a.equals(b));//false  

2equals方法:

    第一种情形:比较引用。 equals默认行为时比较引用,如果不覆盖(即重写)equals方法,此时在比较对性引用时,equals= =等价。比较规则:当参数obj引用的对象与当前对象为同一对象时,就返回true,否则返回false

 

     A a = new A();     A b = new A();     System.out.println(a==b); //false     System.out.println(a.equals(b));//false


          第二种情形:比较内容,也即值。当在新类中覆盖object类的equals中的方法时,比较规则:如果对象类型一致,并且内容一致,则返回true。这些类型有:java.io.file, jave.util.Date, java.lang.string, 包装类(IntegerDouble等)。重写equals方法要满足离散数学特性:自反性,对称性,传递性,一致性,非空性。

覆盖了equals方法实例:

 

    Integer a = new Integer(0);    Integer b = new Integer(0);    System.out.println(a==b);   //false    System.out.println(a.equals(b));//true
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 ipad账户被禁用怎么办 ipad账号被锁定怎么办 苹果平板停用了怎么办 pad忘记id密码怎么办 京东实名开小差怎么办 路由器信号太强怎么办 wifi被破解了怎么办 眼睛被电光刺伤怎么办 被紫外线灯照射怎么办 浴巾洗了发硬怎么办 枕巾上的头油怎么办 洗手盆缝隙漏水怎么办 洗手盆裂缝漏水怎么办 洗手盆堵了怎么办 征信账号注册怎么办 注册不了征信号怎么办 阿里巴巴一键铺货到淘宝发货怎么办 淘宝购物的问题怎么办 买家评价被删除怎么办 淘宝订单虚假交易怎么办 被判定虚假物流怎么办 淘宝有虚假交易怎么办 微信辅助不了怎么办 微信验证失败怎么办 淘宝占空间太大怎么办 淘宝占用空间大怎么办 ipad空间不够用怎么办 ipadmini密码忘了怎么办 旧ipad特别卡怎么办 苹果ipad反应慢怎么办 手机垃圾多了怎么办 ipad2内存过低怎么办 苹果平板ipad内存不足怎么办 手机dns配置错误怎么办 蓝牙已停止运行怎么办 ipad看电视闪退怎么办 ipad为什么看电视会闪退怎么办 微淘直播延迟怎么办 手机淘宝进群领金币怎么办 做淘客冲销量停止淘客后怎么办 微信中零钱提现怎么办