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

电商公司网站建设财务核算wordpress 多色主题

电商公司网站建设财务核算,wordpress 多色主题,深网著名网站,手机怎么制作ppt小伟刚毕业时面的第一家公司就被面试官给问住了#xff0c;记忆尤深啊… 如何理解Java中的自动拆箱和自动装箱#xff1f; 自动拆箱#xff1f;自动装箱#xff1f;什么鬼#xff0c;听都没听过啊#xff0c;这…这…知识盲区… 回到家后小伟赶紧查资料#xff0c;我…小伟刚毕业时面的第一家公司就被面试官给问住了记忆尤深啊… 如何理解Java中的自动拆箱和自动装箱 自动拆箱自动装箱什么鬼听都没听过啊这…这…知识盲区… 回到家后小伟赶紧查资料我透这不就是问基本类型跟封装类型吗面试官整啥名词呢… 别问结果问就是没过。 1、 什么是自动装箱自动拆箱 定义基本数据类型和包装类之间可以自动地相互转换 理解装箱就是自动将基本数据类型转换为封装类型拆箱就是自动将封装类型转换为基本数据类型。 我们知道Java中提供了四大类基本数据类型分别是整数、浮点数、字符型和布尔型其中 整数包含byte、int、short、long浮点数包含float、double字符类型char布尔类型boolean 基本数据类型相信大家一定很熟悉了吧来来来说说他们的取值范围~ 数据类型取值范围byte-128 ~ 127short-32786 ~ 32767int-4294967296 ~ 4294967295long-264 ~ 264 -1float3.4e-038 ~ 3.4e038double1.7e-308 ~ 1.7e308char\u0000 ~ \uffffbooleantrue 、false 日常开发中靠这些基本数据类型几乎能够满足我们的需求但是基本类型终究不是对象往重了说不满足面向对象的开发思想往轻了说就是使用不方便。怎么讲例如做一些数据类型转换获取int数据类型的取值范围等等。 我们知道类的优点在于它可以定义成员变量、成员方法提供丰富便利的功能因此Java在JDK1.0的时候就设计了基本数据类型的包装类而在JDK1.5中引入了新特性自动装箱和拆箱。 我们来看一下基本类型跟封装类型之间的对应关系 数据类型封装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean 2、 使用包装类型后的便捷 我们以上边提到的数据类型转换为例看看使用包装类型后的便捷性。 小伟在数据库中存放商品库存用的是 varchar 类型来存储的所以在代码中的实体与之对应的是 String那么问题来了既然是库存那么势必就要用到加减乘除之类的运算所以就需要先转换成 数值类型(int\long\float等)来运算我们看一下通过包装类是如何快速转换的「int\long\float」 public class Test {public static void main(String[] args) {// 数据库中的商品数量 numberString number 666;// 借助封装了 Integer 转换为 intint intVal Integer.valueOf(number);// 借助封装了 Float 转换为 floatfloat floatVal Float.valueOf(number);// 借助封装了 Long 转换为 longlong longVal Long.valueOf(number);// 依次输出三个值的内容System.out.println(intintVal);System.out.println(floatValfloatVal);System.out.println(longVallongVal);} }3、 落实自动装箱、拆箱 看完了包装类型的便捷性后我们再来落实到自动装箱、自动拆箱上… 怎么就自动装箱自动拆箱了呢 上一段代码看看哪是自动装箱跟自动拆箱 // 自动装箱 1. Integer a 100; // 自动拆箱 2. int b a;自动装箱相当于Java编译器替我们执行了 Integer.valueOf(XXX); 自动拆箱相当于Java编译器替我们执行了Integer.intValue(XXX); 我们证实一下首先通过 javac 编译得到 class 文件接着反编译看看 指令为javap -c class文件名得到下图所示 看完编译器替我们做的接下来我们再通过源码看看首先是自动装箱 valueOf() 方法: public static Integer valueOf(int i) {if (i IntegerCache.low i IntegerCache.high)return IntegerCache.cache[i (-IntegerCache.low)];return new Integer(i); }我们可以看到首先是if方法 对传入的int 数值进行判断如果 i -128 且i 127 那么就会从IntegerCache缓存中获取指定数字的封装类如果不存在则 new 出一个新的封装类关于 IntegerCache 其内部实现了一个Integer的静态常量数组在类加载的时候执行static静态块进行初始化-128~127之间的Integer对象存放到cache数组中cache属于常量存放在java的方法区中对方法区不太了解的小伙伴可以先留空后面我会单独水一篇的~ 额外补充一下上边我们只看了Integer封装类的自动装箱方法从方法中我们了解了在-128~127之间使用了缓存那么是不是意味着别的封装类也是这样呢其实不是的首先Integer使用缓存原因是该区间会被经常使用到且数量个数比较确定就256个值所以为了提高效率防止每次自动装箱都创建一次对象实例然后就你懂得~而double、float浮点型是没有使用缓存的因为小数点的原因所以在这个区间范围内个数是比较泛的即不适合缓存没有意义。 我们通过一段代码看看这个缓存的效果吧 public class Test2 {public static void main(String[] args) {Integer a 100;Integer b 100;Integer c 200;Integer d 200;System.out.println(ab); // 打印trueSystem.out.println(ab); // 打印false} }接着再来看自动拆箱 intValue() 方法 private final int value;public int intValue() {return value; }这个方法就比较简单了调用时直接返回了基本数据类型的 value 值。 至此我们看完了自动装箱、自动拆箱以Integer为例我们知道了使用 valueOf() 方法实现装箱使用 intValue() 方法实现拆箱接下来我们再结合几行代码重新回顾一下 1. Integer a new Integer(100); 2. Integer b 100; 3. b100;第一行代码new 了一个 Integer 对象实例将 int 类型的数据传入包装成了 Integer 类型。 第二行代码首先我们知道 100 是 int 类型的但是等待复制的 b 是 Integer 类型此时就用到了自动装箱b Integer.valueOf(100)将100包装成包装类了「通过反编译验证」 第三行代码用到了自动装箱自动拆箱b b 100 Integer.intValye(b) 100 此时计算结果得到的应该是 int 类型的 b但是 b 又被限定了是 Integer 类型所以就又要用到 Integet.valueOf() 自动装箱。 4、 上才艺 才艺一如何理解Java中的自动拆箱和自动装箱 答自动装箱就是将基本数据类型自动转换为封装类型自动拆箱是将封装类型自动转换为基本数据类型。 才艺二能说一下是通过哪些方法实现自动拆箱、装箱的吗 答以Integer为例使用Integer.valueOf()方法实现装箱使用Integer.intValue()方法实现拆箱。 推荐阅读 跟小伟一起学习类加载机制 为什么有这么多领优惠劵的群 单招计算机类哪个专业比较好 本文首发于博客园https://www.cnblogs.com/niceyoo
http://wiki.neutronadmin.com/news/366294/

相关文章:

  • 网站开发都是用什么框架河北seo搜索引擎优化
  • 模板做的网站如何下载新乡网站建设新乡
  • 做的网站里面显示乱码怎么解决整合营销推广策略
  • 抓取资源的网站怎么做免费网站开发公司
  • 网站建站建设哪家好桂林市是几线城市
  • 推广网站广告有哪些望牛墩东莞网站建设
  • 怎么查网站制作空间有效期qq企业邮箱怎么申请
  • 四川广安网站建设城市中国商业网站平台
  • 沈阳建设工程信息网站品牌营销传播
  • 东莞南城网站设计做网站公司如何选
  • 互联网行业建设网站天津建设工程新希望
  • 巴彦淖尔市网站制作网站建设公司专业开发北京网站
  • 做网站属于什么技术台州网站开发建设
  • 网站优化需要那些工具wordpress入门教程(视频)
  • 济南本地网站小型企业网站模板
  • 长沙多迪php网站开发培训学校网站建设与依法行政
  • 做一个付费网站多少钱网站开发后怎么转安卓app
  • 新闻资讯网站备案四川网站开发制作
  • 天津市建设工程造价管理协会网站创建网站用英语怎么说
  • 东营做网站m0536广州城市建设规划局网站
  • iis 网站访问权限设置免费开源网站建设系统
  • 网站正在建设中单页农业推广网站建设
  • 事业单位建立网站支付宝 外贸网站
  • 专业网站建设科技公司wordpress数据同步
  • 上海做网站比较好的关键词优化排名seo
  • 最专业的微网站开发工控机做网站服务器
  • 在别的公司做的网站人人装修网
  • 网站的备案号查询如何免费学校建网站
  • 邢台建设网站公司简阳网站建设
  • 做公司网站需要营业执照吗游戏类网站怎么做