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

成都网站成都网站制作公司湖北省网站建设

成都网站成都网站制作公司,湖北省网站建设,广州广建建设工程有限公司,同一个空间可以做两个网站么今天在测试代码的时候,同事问我新加的一段逻辑出现了空指针异常 看了下,是很久前自己写的代码,int和Integer对象比较的时候,用了在不传Integer的情况下,会出现空指针异常。查资料回忆了一下,int和Integer的…

今天在测试代码的时候,同事问我新加的一段逻辑出现了空指针异常

看了下,是很久前自己写的代码,int和Integer对象比较的时候,用了==在不传Integer的情况下,会出现空指针异常。查资料回忆了一下,int和Integer的比较关注重点

1.Integer是int的封装类,int与Integer比较时,Integer会自动拆箱,如果都有相同的值(比如100)无论怎么比,int与Integer都相等。

2.查看java源代码可知道,Integer比较时,在-128与127之间,Integer会自动存在内存中,再有时,直接从内存中去取,不在这个范围则会new新对象,所以Integer a=100,Integer b=100,a==b是返回true的

同时Integer与new Integer永远都不相等。

范例

int a=127;int b=127;Integer c = 127;Integer d = new Integer(127); Integer e=127;

a==b true;     a==c;true        c==d;false;       a==d;true;        c==e true;

int a=128;int b=128;Integer c=128;Integer d=128;Integer e = new Integer(128);

a==b true;    a==c true;     a==e true;    c==d false;    c==e  false;

java的自动装箱与自动拆箱

自动装箱就是将基本数据类型转换为包装器类型,自动拆箱就是将包装器类型转为基本数据类型。

装箱过程系统执行了Integer.valueOf(99);

在-128到127范围,会生成同一个对象,在范围之外,会执行new Integer(99);

装箱的过程会创建对应的对象,这个会消耗内存,所以装箱的过程会增加内存的消耗,影响性能

拆箱过程执行了int totlprim = total.intValue();

直接返回value

正确的比较方法:

比较相等:Objects.equals(c,d);则以上所有比较都为true;

比较大小:如果不确定是否包含空指针

int a =127,Integer b = null;
//方法1
Stream.of(a, b).filter(Objects::nonNull) // 过滤掉null值.map(Optional::of)       // 将非null值转换为Optional.reduce((a1, b1) -> a1.flatMap(av -> b1.map(bv -> av.compareTo(bv)))) // 安全比较两个值.ifPresent(result -> System.out.println(result.get())); // 处理结果,如果有的话
//方法2Comparator<Integer> safeComparator = Comparator.nullsLast(Comparator.naturalOrder());int result = safeComparator.compare(a, b);// 处理result,例如使用Comparator.nullsLast()来改变null的处理方式(例如放在最后)System.out.println(result);

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

相关文章:

  • 网站网页制作公司赣州企业网络搭建
  • 手机网页版传奇海南网站seo
  • 江北网站建设医保局网站建设中标公告
  • 网站推广一般在哪个网做本地wordpress很慢
  • 哪些网站做平面单页好看网站建设公司企业文化
  • 深圳网站建设网站建设摩托车官网110
  • 网站开发经理具备什么知识网站未备案会怎么样
  • 微信怎么开店铺网站的seo优化报告
  • 建设网站要点保定网站建设咨询
  • 网页与网站设计什么是抖动详情页设计排版
  • 如何把本地网站网站建设财务规划
  • 全flash 电子商务网站如何推广网址免费生成app
  • 男做直播网站好让wordpress完美拥有论坛功能
  • 做淘宝客网站教程苏州公司网站建设找哪家
  • 做招工的网站排名好看的博客页面
  • 专业微网站营销网站动态链接做Seo怎么办
  • 上海做高端网站制中国建设银行官网个人网上银行
  • 设计师门户网站源码如何下载网站模版
  • 南通市建设工程网站烟台做网站需要多少钱
  • wordpress站内seo一个网站的作用是什么
  • 那个啥的网站推荐下营销型网站特点
  • O2O网站开发工程师wordpress采集发布接口
  • 网站seo外包长沙网上商城网站建设方案
  • 淘宝上做网站 源代码怎么给你深圳比较好的vi设计公司
  • 网站公司设计公司做教育网站
  • 做网站公司599网站建设广州网站建设
  • 郑州网站推广汉狮网络建设网站需申请什么资料
  • 安卓做视频网站好域名是什么意思怎么查
  • 网站建站基础营销策划公司经营范围包括哪些
  • 免费app下载网站网站建设设计制作方案与价格