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

网站开发 需求清单网站建设 发短信文案

网站开发 需求清单,网站建设 发短信文案,重庆网站托管外包公司哪家好,上海市门户网站在给部门做分享的时候#xff0c;一位同学提问说一直没搞明白Java的装箱和拆箱#xff0c;让我给讲解下#xff0c;所以才有了下面这篇文章#xff1a;本次文章根据PPT分享整理而成#xff0c;会有5点#xff1a;1、什么是装箱和拆箱#xff1f;2、基本数据类型和包装类…在给部门做分享的时候一位同学提问说一直没搞明白Java的装箱和拆箱让我给讲解下所以才有了下面这篇文章本次文章根据PPT分享整理而成会有5点1、什么是装箱和拆箱2、基本数据类型和包装类型区别3、示例演示4、示例代码分析5、总结1、什么是装箱和拆箱概念装箱是将基本类型转换为包装类型拆箱是想包装类型转换为基本类型示例Integer a new Integer(1); //装箱int b a.intVal(); //拆箱//JDK1.5开始自动装箱和拆箱Integer a 1; //自动装箱int b a;//自动拆箱2、基本数据类型和包装类型区别概念基本数据类型不需要在堆中分配内存直接将变量的值存储在堆栈上包装类型基本数据类型不具有对象的性质为了让其具有对象性质故出现包装类型将基本类型包装使其具有对象性质相互转换基本数据类型转换为包装类型Integer.valueOf(int);...包装类型转换为基本数据类型intValue();longValue();...基本类型和包装类型对应关系基本数据类型包装类型byteBytecharCharactershortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBoolean3、示例演示// 如果您能全部回答正确您可以跳过后面章节public static void main(String[] args) {Integer a 1;Integer b 2;Integer c 3;Integer d 3;Integer e 129;Integer f 129;Long g 3L;System.out.println(c d);System.out.println(e f);System.out.println(c (ab));System.out.println(c.equals(ab));System.out.println(e.equals(f));System.out.println(g (ab));System.out.println(g.equals(ab));}4、示例代码分析// 反编译代码注意其中中文注释是我加的便于大家查看public static void main(java.lang.String[]);Code:0: iconst_11: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;4: astore_15: iconst_26: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;9: astore_210: iconst_311: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;14: astore_315: iconst_316: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;19: astore 421: sipush 12924: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;27: astore 529: sipush 12932: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;35: astore 637: ldc2_w #3 // long 3l40: invokestatic #5 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;43: astore 745: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;48: aload_349: aload 451: if_acmpne 58 //cd注意这里执行进行了引用比较54: iconst_155: goto 5958: iconst_059: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V62: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;65: aload 567: aload 669: if_acmpne 76 //ef注意这里执行进行了引用比较72: iconst_173: goto 7776: iconst_077: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V80: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;83: aload_384: invokevirtual #8 // Method java/lang/Integer.intValue:()I87: aload_188: invokevirtual #8 // Method java/lang/Integer.intValue:()I91: aload_292: invokevirtual #8 // Method java/lang/Integer.intValue:()I95: iadd // 这里执行了(ab)96: if_icmpne 103 // 这里执行c(ab)数值比较99: iconst_1100: goto 104103: iconst_0104: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V107: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;110: aload_3111: aload_1112: invokevirtual #8 // Method java/lang/Integer.intValue:()I //拆箱115: aload_2116: invokevirtual #8 // Method java/lang/Integer.intValue:()I //拆箱119: iadd120: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; //装箱123: invokevirtual #9 // Method java/lang/Integer.equals:(Ljava/lang/Object;)Z //c.equals(ab)126: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V129: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;132: aload 5134: aload 6136: invokevirtual #9 // Method java/lang/Integer.equals:(Ljava/lang/Object;)Z //e.equals(f)139: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V142: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;145: aload 7147: invokevirtual #10 // Method java/lang/Long.longValue:()J //Long 拆箱150: aload_1151: invokevirtual #8 // Method java/lang/Integer.intValue:()I //Integer 拆箱154: aload_2155: invokevirtual #8 // Method java/lang/Integer.intValue:()I //Integer 拆箱158: iadd // (ab)159: i2l // (ab)结果转换为long类型160: lcmp // 执行 g (ab) 数值比较161: ifne 168164: iconst_1165: goto 169168: iconst_0169: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V172: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;175: aload 7177: aload_1178: invokevirtual #8 // Method java/lang/Integer.intValue:()I //Integer 拆箱181: aload_2182: invokevirtual #8 // Method java/lang/Integer.intValue:()I //Integer 拆箱185: iadd // (ab)数值相加186: invokestatic #2 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer; // Integer装箱189: invokevirtual #11 // Method java/lang/Long.equals:(Ljava/lang/Object;)Z //执行g.equals(ab)192: invokevirtual #7 // Method java/io/PrintStream.println:(Z)V195: return}结合反编译代码给出的分析当我们定义Integer a 1;时实际执行Integer.valueOf(1)返回Integer对象// 默认IntegerCache.low -128, IntegerCache.high 127// 但是可以指定java.lang.Integer.IntegerCache.highpublic static Integer valueOf(int i) {if (i IntegerCache.low i IntegerCache.high)return IntegerCache.cache[i (-IntegerCache.low)];return new Integer(i);}当我们给a、b、c和d赋值时是在-128-127范围内直接从缓存中取值而执行e和f赋值时会执行new Integer(int)所以他们是不同的Integer对象符只有遇到运算符才会执行“自动拆箱”当执行equals比较会执行类型判断和数值比较public boolean equals(Object obj) {if (obj instanceof Integer) {return value ((Integer)obj).intValue();}return false;}运行结果c d:true //没有自动拆箱直接比较引用e f:false //没有自动拆箱直接比较引用c (ab):true //执行“自动拆箱”进行数值比较c.equals(ab):true //ab拆箱相加然后自动装箱再执行equalse.equals(f):true //没有执行装箱和拆箱g (ab):true //自动拆箱执行idd,进行数值比较g.equals(ab):false //ab拆箱相加然后自动装箱再执行equals5、总结包装类型的数值比较要注意符号的使用最好使用equals进行数值比较因为equals会自动执行拆箱进行数值比较
http://www.zqtcl.cn/news/694342/

相关文章:

  • 有什么可以在线做奥数题的网站中国建设网官网下载
  • 网站加载特效代码网站建设5000费用
  • 网站切图谁来完成wordpress 谷歌登陆
  • 租房网站建设网站怎么黑
  • 文成做网站搜索引擎优化工具深圳
  • 网站源码下载平台小程序云开发费用
  • 网站建设的数字化和互联网化网站作品
  • 南京专业网站制作公司有哪些亚马逊网网站建设规划报告
  • app免费制作网站模板网站打开速度进行检测
  • 进下加强新闻宣传网站建设wordpress做论坛网站
  • 朝阳网站搭建公司淘宝导购网站备案
  • 京润珍珠企业网站优化洛阳做网站
  • 嘉定网站开发中山市区做网站公司
  • 可信赖的武进网站建设上海中小企业服务中心
  • 应用网站品牌官方网站
  • 网站建设综合训练的实验目的漳州网站建设网站运营
  • 网页设计免费网站推荐我的世界做壁纸的网站
  • 黄岩做网站的公司网站栏目相关内容在哪采集啊
  • 邯郸市城市建设局网站快速建站平台
  • 华为官方手表网站wordpress文章图片链接
  • 做个网站需要多久腾讯云云服务器官网
  • 松江企业做网站一个阿里云怎么做两个网站
  • 网站制作+app+公众号app制作定制外包88
  • 企业网站建设有哪些好处制作网页之前必须先建立什么
  • 盐亭县建设局网站网站建设基本技术
  • 优化seo网站高质量的邯郸网站建设
  • 网站开发 合同范本软件设计专业介绍
  • 南山网站建设设计莱州网站建设关键字排名优化网络托管微信代运营
  • 传统门户网站有哪些网络营销公司全网推广公司
  • 桥头镇网站建设卢松松外链工具