码迷,mamicode.com
首页 > 其他好文 > 详细

Integer 和int

时间:2016-09-04 10:09:34      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

获取Integer对象有两种方式:Integer x = 100;或者Integer x = new Integer(100);

Integer x = 100;等价于Integer x = Integer.valueof(100); 用valueof()函数返回一个Integer对象。

 

Integer是对象 int是数据类型,对象和数据类型比,比的是数值,会自动拆箱,所以不管是Integer x = 100;或者Integer x = new Integer(100);

和100相==,结果都为true;

 

而获取Integer对象的两种方式是新建Integer对象,那么内存地址就会改变,所以新建的两个Integer对象之间==,结果会为false;

 

但是有特例,valueof()函数的参数值如果在-128到127之间,会进行缓存,所以连续吧valueof()参数在这个范围中间的返回值赋予两个Integer引用,会指向同一个对象,所以这个时候

Integer i1 = 100; Integer i2 = 100; i1==i2 为true;

 

Integer 和int

标签:

原文地址:http://www.cnblogs.com/chuliang/p/5838659.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!