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

山东恒昆建设工程有限公司网站本地的上海网站建设公

山东恒昆建设工程有限公司网站,本地的上海网站建设公,合肥网站建设推广,黄骅住房和城乡建设局网站目录 前言 一、自动装箱与拆箱#xff08;以 Integer 包装类为例#xff09; 二、再来看看几个示例 ​编辑三、Double ,Float 类型亦是如此吗#xff1f; 前言 小伙伴们大家好#xff0c;日常使用业务层方面的代码居多#xff0c;但也不可忘了基本的一些代码格式以及原… 目录 前言 一、自动装箱与拆箱以 Integer 包装类为例 二、再来看看几个示例 ​编辑三、Double ,Float 类型亦是如此吗 前言 小伙伴们大家好日常使用业务层方面的代码居多但也不可忘了基本的一些代码格式以及原理比如最近看到的一种题型这里就涉及到了自动装箱的基础知识了 Integer i new Integer(10);Integer j 10;Integer k 10;System.out.println(i j); //falseSystem.out.println(k j); //true 一、自动装箱与拆箱以 Integer 包装类为例 1、装箱就是自动将基本数据类型转换为包装器类型( int Integer),调用Integer.valueOf(int )方法 2、拆箱就是反过来将包装器类型转换为基本数据类型调用了Integer.intValue方法 3、java并不是一开始就支持自动拆装查了下是在Java SE5之后才支持该功能 自动装箱之后写法对比         Java SE5之前Integer i new Integer(10);         Java SE5之后Integer i 10; 二、再来看看几个示例 1.比如前言中提到的 i 和 j 为什么不相等 Integer i new Integer(10)          创建了一个新的Integer对象而Integer j 10; 则会自动装箱实际上会调用Integer Integer j 10         实际上进行了装箱操作相当于调用了Integer.valueOf(10)                          而由于10在缓存范围内因此会复用缓存中的对象。 i和j虽然表示的是相同的值但是i和j指向的是不同的对象所以表达式 i j 的结果是false 2.通过new 关键字生成的Integer对象比较 Integer i new Integer(127);Integer j new Integer(127);System.out.println(i j); //false i 和 j 分别是通过 new Integer(127) 创建的两个不同的对象会被强制创建为新的对象而不是从缓存中获取。即使值相同但它们在内存中的位置不同因此比较 i j 会返回 false。 3.Integer.valueOf 方法缓存的对象大小区间 Integer k 10;Integer l Integer.valueOf(10);Integer l1 Integer.valueOf(128);System.out.println(k l); //trueSystem.out.println(k l1); //false Integer k 10; Integer l Integer.valueOf(10);     这两行代码执行时都会将值为10的整数赋给Integer对象。在Java中对于数值范围在-128到127之间的整数会被缓存起来所以当你比较 k l 时因为10在缓存范围内它们实际上指向的是同一个对象所以返回true。           而当比较 k l1 时因为128不在缓存范围内所以 Integer.valueOf(128) 会创建一个新的Integer对象与 Integer k 10; 创建的对象不同因此返回false。 来看下 Integer.valueOf 方法内部 制定了数值范围如果是在[-128,127]之间返回IntegerCache缓存中已经存在的对象的引用否则创建一个新的 Integer对象所以k 和 l 指向的是同一个对象k 和 l1 分别指向不同的对象 三、Double ,Float 类型亦是如此吗 Double i 10.0;Double j 10.0;Float i1 10.0f;Float j1 10.0f;Long i2 10l;Long j2 10l;System.out.println(i j); //falseSystem.out.println(i1 j1); //falseSystem.out.println(i2 j2); //true 通过结果可以看出Long 类型之外的都没有缓存的功能 因为为了性能和内存的考虑只对整数类型的包装类如Integer、Long等进行了缓存优化而没有对浮点数类型的包装类如Float、Double等进行缓存具体分为以下几点。 整数类型的范围相对较小而且常常被使用到因此缓存能够显著提高性能。整数类型的对象在程序中经常被频繁使用缓存能够减少内存的占用和对象的创建次数。对于浮点数类型范围更广而且通常不像整数类型那样被频繁使用。缓存这些类型可能会导致内存开销过大而且由于浮点数的精度和计算方式的特殊性可能会引入更多的问题而不是性能提升。 四、章末 好了文章到这里就结束了~
http://www.zqtcl.cn/news/382725/

相关文章:

  • 江门网站制作维护电子商务网站运营与管理
  • 动画网页制作网站常用的网络推广方法有
  • 一个设计网站多少钱sku电商是什么意思
  • 做网站优化有前景吗emlog和wordpress
  • 30天网站建设实录 pdf货源网站程序
  • 做企业网站需要多久培训机构 网站建设
  • 商业网站初期建设资金预算哈尔滨视频制作公司
  • 网站建设教程网哪个好wordpress 侧边栏 固定
  • 对网站主要功能界面进行赏析软件开发和app开发的区别
  • 西安市高陵区建设局网站如何重新安装电脑上的wordpress
  • 合肥网站快速优化排名全球人口多少亿
  • 中山网站关键字优化使用动易模版制作网站
  • 深圳营销网站建设报价广西住房建设厅网站
  • 爱站网appwordpress图片500
  • 北京网站排名制作图片点击就能跳转网站怎么做的
  • dw网站建设的数据库网站建设托管pfthost
  • 牛商网做网站成品网站1688入口
  • 涿鹿县建设局网站网络营销的定义和特点
  • 网站建设朋友圈怎么写深圳宝安区松岗
  • 苏州网站的建设哪个网站上做自媒体最好
  • 传送门网站是怎么做的wordpress seo标题
  • 曲靖 曲靖网站建设软件(app)开发视频一页网站怎么做
  • 互联网公司网站建设ppt模板下载wordpress 图片2m
  • 箱包官方网站模板平台开发软件
  • 佛山网站改版动漫视频制作软件
  • 易企互联网站建设创办公司需要多少资金
  • wordpress主题页脚添加联系信息百度seo优化排名软件
  • 深圳微信商城网站设计价格广东省自然资源厅事务中心
  • 云服务器做网站视屏工程建设最好的网站
  • 宁夏建设工程质量安全监督网站电商网站需求分析