当前位置: 首页 > wzjs >正文

安陆做网站公司京东seo搜索优化

安陆做网站公司,京东seo搜索优化,西安网站托管商家,服务器上的网站怎么做301问题描述: 看如下代码: Long a 128L; Long b 128L;System.out.println(a b);运行结果如下: 明明 a 和 b 的值一样,但是结果却为 False,为什么同样的类型,同样的值,却不相等,这是…

问题描述:

看如下代码:

Long a = 128L;
Long b = 128L;System.out.println(a == b);

运行结果如下:

明明 ab 的值一样,但是结果却为 False,为什么同样的类型,同样的值,却不相等,这是为什么呢?

原因分析

那么我们就需要查看一下源码了

源码中显示,Long 中有一个静态的内部类 LongCache,专门用于缓存 -128127 之间的值,一共 256 个元素。

如果值在 [-128, 127] 之间,会放在缓存里面,而超过这个范围就要 new 一个新的对象,也就是说 == 不能判断对象是否相等。

当然,如果值是在 [-128, 127] 之间的话是可以正常比较,测不出来什么问题的。

故障解决

1. 使用 .longValue() 比较

Long a = 128L;
Long b = 128L;//System.out.println(a == b);
System.out.println(a.longValue() == b.longValue());

运行结果如下:

2. 使用 .equals() 比较

Long a = 128L;
Long b = 128L;//System.out.println(a == b);
//System.out.println(a.longValue() == b.longValue());
System.out.println(a.equals(b));

运行结果如下:

总结

Longlong 的包装类,而用 Long 声明的变量其实是对象。在 Java 中,== 运算符用于比较基本数据类型时,比较的是它们的值是否相等;但用于比较对象时,比较的是它们在内存中的地址是否相同。 对于 Long 类型来说,其内部存在 LongCache 这个静态内部类用于缓存 -128127 之间的值,一共 256 个元素。当创建 Long 类型对象且赋值在这个区间内时,实际上是从缓存中获取已有的对象,所以使用 == 比较这些在缓存区间内相同值的对象时,会返回 true,因为它们指向的是同一个缓存中的对象,内存地址相同。

然而,一旦赋值超出了 [-128, 127] 这个范围,就会新创建一个 Long 对象,像示例中赋值为 128L 的情况,ab 虽然值相同,但它们是两个不同的对象,在内存中有不同的地址,所以直接使用 == 比较就会返回 false

  • 通过使用 .longValue() 方法,是将 Long 对象转换为基本数据类型 long 再进行比较,此时比较的就是具体的数值了,所以只要数值相等就能返回 true
  • 通过使用 .equals() 方法时,Long 类重写了 Object 类的 equals() 方法,它是先通过 .longValue() 方法获取 Long 对象的基本类型 long 的值之后再做比较。

总之,在比较 Long 类型对象的值是否相等时,要谨慎使用 == 运算符,尽量采用.equals() 的方式来(或者是.longValue()的方式)确保比较的是实际的数值,避免因对象内存地址不同而导致比较结果不符合预期

http://www.dtcms.com/wzjs/461193.html

相关文章:

  • 无锡做网站费用seoul什么意思
  • 大型网站开发什么书籍好新闻稿代写
  • 想在网站里添加超链接怎么做百度注册
  • asp怎么做网站适配国产最好的a级suv
  • 营销型网站建设平台提高搜索引擎排名
  • 武汉微网站怎么营销自己的产品
  • 动漫网站开发毕业设计重庆网站关键词排名
  • 网站被k 申诉优化大师网页版
  • 现在国外还有新冠疫情吗网站推广优化是什么意思
  • 中型网站开发语言热门关键词查询
  • 天涯论坛发帖推广网站排名优化+o+m
  • 用什么java软件做网站网站宣传费用
  • 云南做网站哪家好如何开一个自己的网站
  • 潍坊关键词优化服务电商seo优化是什么意思
  • 德州商城网站建设游戏推广是什么工作
  • 岚山建设网站网络营销策略优化
  • 上海网站建设口碑最好的公司搜索引擎收录入口
  • 西安网站建设托管网站广告接入
  • 中国医院考试网站模板下载企业seo推广的绝密诀窍曝光
  • 网站建设公司响应式网站模板下载在线seo推广软件
  • 怎样推广平台百度seo排名培训优化
  • 三只松鼠的网站建设进行seo网站建设
  • 网站做的比较好的公司吗b站官方推广
  • 建设网站应该怎么做seo资源是什么意思
  • 湛江模板建站系统静态网页制作
  • 淘宝客网站用什么软件做网站制作公司怎么找
  • 一级a做爰片免费网站瑜伽竞价软件哪个好
  • 两学一做专题教育网站公司网站营销
  • 网站建设案例代理商社群营销的方法和技巧
  • 免费营销软件网站建设站长字体