Integer的127与128
来源:互联网 发布:2016淘宝卖什么好 编辑:程序博客网 时间:2024/06/13 00:38
<span style="font-family: 微软雅黑, Verdana, sans-serif, 宋体; font-size: 14px; background-color: rgb(241, 248, 240);">JVM会自动维护八种基本类型的常量池,int常量池中初始化</span><span style="padding: 0px; margin: 0px; font-family: 微软雅黑, Verdana, sans-serif, 宋体; font-size: 14px;">-128~127的范围,所以当为Integer i=127时,在自动装箱过程中是取自常量池中的数值,而当<span style="padding: 0px; margin: 0px;">Integer i=</span>128时,128不在常量池范围内,所以<span style="padding: 0px; margin: 0px;">在自动装箱过程中</span>需new 128,所以地址不一样。</span>
public class Test {public static void main(String[] args) {Integer i1 = new Integer(1);Integer i2 = new Integer(1);System.out.println(i1 == i2);//falseInteger i3 = 127;Integer i4 = 127;System.out.println(i3 == i4);//trueInteger i5 = 128;Integer i6 = 128;System.out.println(i5 == i6);//falseint i7 = 128;int i8 = 128;System.out.println(i7 == i8);//true}}
对于较小数值的整型,在处理自动装箱的时候,采用常量池里面的值以节省内存,而大数值则是重新new出来的。这里刚好是分界线。
//Boolean类也实现了常量池技术Boolean bool1=true;Boolean bool2=true;System.out.println(bool1==bool2); //输出true//浮点类型的包装类没有实现常量池技术Double d1=1.0;Double d2=1.0;System.out.println(d1==d2); //输出false
0 0
- Integer的127与128
- java jdk缓存-128~127的Long与Integer
- Integer与Integer间的比较
- Integer.getInteger()与Integer.parseInt()的区别
- Integer的127和128
- int与integer的区别!
- int 与 Integer 的区别
- int与Integer的区别
- int与integer的区别
- int与Integer的区别
- Integer与int的区别
- int与integer的区别!-
- int与Integer的区别
- Integer 与int 的区别
- Integer与int的区别
- int 与 integer的区别
- Integer与int的区别
- Integer与int的区别
- WinCE5.0/6.0下,通过command line实现自动化编译
- Android深入浅出系列之实例应用—具有自动提示的菜单应用AutoCompleteTextView和ArrayAdapter的使用
- TFTP环境的搭建
- vs2012运行webserver时出现错误提示: 创建在“system.net/defaultProxy”配置节中指定的 Web 代理时出错。
- git
- Integer的127与128
- 三组数 输出反序数 间隔空格
- spring 与jbpm整合
- 应用TortoiseGit为github账号添加SSH keys
- c/c++源代码
- ios7 uitableview group模式顶部有个空白
- 让我们一起看看C++ 一.对世界说你好.嘿嘿
- Oracle控制文件、数据文件、临时文件总结笔记
- thinkPHP验证码失效的问题