博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
牛客网Java刷题知识点之自动拆装箱
阅读量:6713 次
发布时间:2019-06-25

本文共 1523 字,大约阅读时间需要 5 分钟。

 

 

   不多说,直接上干货!

 

https://www.nowcoder.com/ta/review-java/review?query=&asc=true&order=&page=5

 

 

 

 Java语言支持的8种基本数据类型是:

byte
short
int
long
float
double
boolean
char

 
 
  自动装箱是Java编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如:把int转化成Integer,double转化成Double,等等。反之就是自动拆箱。
  Java支持的数据类型包括两种:一种是基本数据类型,包含byte,char,short, boolean ,int , long, float,double;另一种是引用类型:如String等,其实是对象的引用,JVM中虚拟栈中存的是对象的地址,创建的对象实质在堆中,通过地址来找到堆中的对象的过程,即为引用类型。
  
自动装箱就是Java编译器在基本数据类型和对应的对象包装类型间的转化,即int转化为Integer。
  
自动拆箱是Integer调用其方法将其转化为int的过程。

 

 

 

  题目链接

https://www.nowcoder.com/profile/4002626/myFollowings/detail/3200810

 

 

1、Integer有三种创建方式:

  Integer i1 = 59;
  Integer i2 = Integer.valueOf(59);
  Integer i3 = new Integer(59);

2、如果一个Integer类型的数和int类型的数相比(==),那么,由于会自动拆箱,Integer会拆箱为int型,所以,只要数值相等,则这个Integer就和int型的数字相等,不管这个Integer是以何种方式创建的。

 

package Test;public class IntegerTest {        public static void main(String[] args) {    Integer i1 = 59;    Integer i2 = Integer.valueOf(59);    Integer i3 = new Integer(59);    int i4 = 59;        //只要是和int类型的比较,不管Integer如何创建,只要满足数值相等,就为true,因为会自动拆箱    System.out.println(i1==i4);//true    System.out.println(i2==i4);//true    System.out.println(i3==i4);//true        //只要是new Integer,并且比较的不是int型,那么,一定不相等    System.out.println(i2==i3);//false    System.out.println(i1==i3); //false        //如果涉及到Integer.valueOf这个方法,那么,只要记住,    // 如果 Integer i1 = 59,这个值在-128到127范围内,则true    // 否则,false    System.out.println(i1==i2); //true    Integer i7 = 129;    Integer i8 = Integer.valueOf(129);    System.out.println(i7==i8);//false       }    }

 

转载地址:http://dghlo.baihongyu.com/

你可能感兴趣的文章
Centos-Mysql复制备份还原数据库
查看>>
(5)Python字典
查看>>
ES6(Proxy 和 Reflect)
查看>>
React 路由状态管理总结
查看>>
禅道 11.3 版本发布,主要完善细节,修复 bug
查看>>
无人机新用途,可精确识别危险海洋生物并向游泳者发出预警
查看>>
(一) virtualenv虚拟环境安装
查看>>
Android官方开发文档Training系列课程中文版:分享简单数据之从其它APP接收简单数据...
查看>>
OpenSSL将于9月22日发布多个漏洞补丁
查看>>
大数据助推新型智库建设
查看>>
新加坡欲重组通信和媒体管制机构
查看>>
《CCNP ROUTE 300-101学习指南》——2.2节构建EIGRP拓扑表
查看>>
《为自己工作——世界顶级设计师成功法则》目录—导读
查看>>
Libreboot 项目向开源社区示好和致歉
查看>>
《CMYK 2.0——设计师色彩管理手册》—第1章1.3节副作用
查看>>
java.util.concurrent.locks.LockSupport
查看>>
红帽加入 Node.js 基金会白金会员
查看>>
《OpenGL编程指南》一2.7 独立的着色器对象
查看>>
Ionic 3.4.2 发布,漂亮的 HTML5 移动应用框架
查看>>
Linux Kernel 4.9-rc8,4.9 分支最后一个候选版
查看>>