java == equals

  1. 对于基本数据类型(byte,short,char,int,float,double,long,boolean)来说,只有 ==,判断值是否相等(他们的值都放在了常量池中)
  2. 对于基本数据的包装类型(Byte, Short, Character,Integer,Float, Double,Long, Boolean)除了Float和Double之外,equals比较的是值,而 == 比较是地址值,需要注意 -128-127的问题
  3. 字符串
    3.1: == 问题
    String str = “123”; String str02 = “123”;这种方式声明的字符串, == 判断是true.因为地址都指向常量池
    String str = new String(“123”); String str02 = new String(“123”); == 是 false;因为地址指向的是堆内存地址
    3,2: equals 问题
    上面两种方式都是true, 因为比较的是字符串的值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值