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

上海中企动力做网站多少钱如何做一个个人网站

上海中企动力做网站多少钱,如何做一个个人网站,企业网上核名,域名设计从一道选择题开始分析选项A选项A中比较的是i01和i02#xff0c;Integer i0159这里涉及到自动装箱过程#xff0c;59是整型常量#xff0c;经包装使其产生一个引用并存在栈中指向这个整型常量所占的内存#xff0c;这时i01就是Integer 的引用。而int i0259由于int是基本类型…从一道选择题开始分析选项A选项A中比较的是i01和i02Integer i0159这里涉及到自动装箱过程59是整型常量经包装使其产生一个引用并存在栈中指向这个整型常量所占的内存这时i01就是Integer 的引用。而int i0259由于int是基本类型所以不存在引用问题直接由编译器将其存放在栈中换一句话说i02本身就是59。那么System.out.println(i01 i02)结果任何呢这里涉及到了拆箱的过程因为等号一边存在基本类型所以编译器后会把另一边的Integer对象拆箱成int型这时等号两边比较的就是数值大小所以是true。好了到了这里你有没有想到这样一个问题如果是Integer i0159Integer i0259然后System.out.println(i01 i02)的结果是可能你会说比较数值大小所以相等啊也有可能说等号两边对象引用所以比较的是引用又因为开辟了不同的内存空间所以引用不同所以返回false。可是正确答案是true.再来看这个问题如果是Integer i01300Integer i02300然后System.out.println(i01 i02)的结果是 你可能说上面你不是说了true嘛怎么还问这样的问题可是这次的答案是false。你是否会吃惊大牛除外我是小白求不打脸解析当靠想象无法解决问题的时候这是就要看源代码了很重要我们可以在Integer类中找到这样的嵌套内部类IntegerCacheprivate static class IntegerCache {//静态缓存类static final int low -128;static final int high;static final Integer cache[];static { //静态代码块// high value may be configured by propertyint h 127;String integerCacheHighPropValue sun.misc.VM.getSavedProperty(java.lang.Integer.IntegerCache.high);if (integerCacheHighPropValue ! null) {int i parseInt(integerCacheHighPropValue);i Math.max(i, 127);// Maximum array size is Integer.MAX_VALUEh Math.min(i, Integer.MAX_VALUE - (-low) -1);}high h;cache new Integer[(high - low) 1];int j low;for(int k 0; k cache.length; k)cache[k] new Integer(j);}private IntegerCache() {}}这个类就是在Integer类装入内存中时会执行其内部类中静态代码块进行其初始化工作做的主要工作就是把一字节的整型数据(-128-127)装包成Integer类并把其对应的引用存入到cache数组中这样在方法区中开辟空间存放这些静态Integer变量同时静态cache数组也存放在这里供线程享用这也称静态缓存。所以当用Integer 声明初始化变量时会先判断所赋值的大小是否在-128到127之间若在则利用静态缓存中的空间并且返回对应cache数组中对应引用存放到运行栈中而不再重新开辟内存。所以对于Integer i0159Integer i0259**i01 和 i02是引用并且相等都指向缓存中的数据所以返回true。而对于**Integer i01300Integer i02300因为其数据大于127所以虚拟机会在堆中重新new (开辟新空间)一个 Integer 对象存放300创建2个对象就会产生2个这样的空间空间的地址肯定不同导致返回到栈中的引用的只不同。所以System.out.println打印出false。B选项从上面的分析我们已经知道Integer i0159返回的是指向缓存数据的引用。那么Integer.valueOf(59)返回的是什么或者操作是什么呢这个函数的功能就是把int 型转换成Integer简单说就是装包那他是新创建一个对象吗还是像之前利用缓存的呢有了之前的经验肯定想到的是利用缓存这样做既提高程序速度又节约内存何乐而不为来看一下源代码public static Integer valueOf(int i) {assert IntegerCache.high 127;if (i IntegerCache.low i IntegerCache.high)return IntegerCache.cache[i (-IntegerCache.low)];return new Integer(i);}很明显跟之前的思想一致若在-128到127范围直接返回该对象的引用否则在堆中重新new 一个。到这System.out.println(i01 i03)的结果毋庸置疑就是true.选项CInteger.valueOf(59)返回的是已缓存的对象的引用而Integer i04 new Integer(59)是在堆中新开辟的空间所以二者的引用的值必然不同返回false,这道题呢就选C选项DSystem.out.println(i02 i04) i02是整型变量i04是引用这里又用到了解包虚拟机会把i04指向的数据拆箱为整型变量再与之比较所以比较的是数值5959返回true.学习并转载自https://blog.csdn.net/dawn_after_dark/article/details/74154338对我很有帮助感谢作者
http://www.huolong8.cn/news/278100/

相关文章:

  • 建设部网站投诉核查企业名单南通网站建设方案开发
  • 网站服务器搭建XP如何给网店做推广
  • 烟台市未成年思想道德建设网站婚纱摄影网页设计
  • 手机wap网站建站系统网站301重定向 权重转移
  • 松山湖网站建设合肥网络推广优惠设想科技
  • 网站开发公司的选择网络营销与推广的概念
  • 电商网站前端源码wordpress 出名主题
  • 网站优化提升速度制作网页一般用什么来设计分割页面
  • 行业网站做不下去网站建站哪家公司好一点
  • 凡科网站建设平台好么大型网站开发经典框架
  • 优秀的定制网站建设制作商展示类网站开发费用
  • 网站建设版面分几页合适网站开发一般用的什么架构
  • 重庆市建设项目环境影响评价网站软件下载网站排行榜前十名
  • 做电力公司网站玛酷机器人少儿编程加盟
  • dw做的网站如何让文字换行dedecms视频网站模板
  • 如何建立网站数据库连接公众号登录手机版
  • 建设标准 免费下载网站企业logo设计合同
  • 保定企业免费建站wordpress 语言选择器
  • 企业网站建设成本费用有和wind一样做用网站
  • 做知识产权相关的网站宁波网站建设兼职
  • 网站建设什么打王思聪网站返利二维码怎么做
  • 还有用asp做网站的吗网站开发蓝云
  • 做返利网站怎麼建设工程合同通用条款
  • 电商网站平台有哪些大学生对校园网站建设的需求是什么
  • 公司网站建设计划邵阳找工作网站
  • 聚美优品网站怎么做的网络科技有限公司起名
  • 做教育app的网站有哪些最新域名ip地址
  • 南昌网站制作建站模板平台
  • 陕西省高速建设集团网站大型网站建设推荐
  • 微信网站合同网站开发毕设设计论文