Integer 与int 赋值比较】的更多相关文章

测试代码: @Test public void IntegerTest() { Integer i01 = 59; int i02 = 59; Integer i03 = Integer.valueOf(59); Integer i04 = new Integer(59); System.out.println(i01==i02); System.out.println(i01==i03); System.out.println(i03==i04); System.out.println(i02…
简述:int与Integer的区别: 对于它们,我们可能只是知道简单的区别.Integer是int的一个封装类,int的初始值为0,而Integer的初始值为null.但是他们之间真的仅仅只有这些区别吗?我觉得答案是否定的,于是我决定深入到jdk源码中一探究竟.看看Integer与int到底有什么区别. 执行代码: public class IntegerTest { public static void main(String[] args) { // TODO Auto-generated…
官网:http://docs.oracle.com/javase/tutorial/java/data/autoboxing.html 1.赋值: a. 把int类型赋值给Integer类型:JVM会自动调用Integer.valueOf()方法 b. 把Integer类型赋值给int类型:JVM会自动调用intValue()方法 2.比较 a. int 与 int 比较:直接对两个变量的值进行比较 b. int 与 Integer 比较:会先把Integer拆装成int类型,然后进行比较 c.…
Integer与int的区别我们耳熟详的有两点:1.Integer是int的包装类.2.Integer的默认初始值是null,而int的默认初试值是0. 下面通过代码进行详细比较. public class TestInteger { public static void main(String[] args) { int i = 128; Integer i2 = 128; Integer i3 = new Integer(128); //Integer会自动拆箱为int,所以为true Sy…
integer a=new integer(1); integer b=new integer(1); int c=1; integer d=1; a==b  false因为地址不同: a==c  true因为Integer与Int比较,int是原始数据类型,与原始数据比较就是比较值: a==d false因为new 就是新建一个地址: integer 1是直接赋值,如果内存中有1这个值的话,就会把地址付给Integer 1,没有的话就重新赋地址: eg:integer a=1;integer…
声明:本文为博主转载文章,原文地址见文末. 知识点1:integer和int的区别 /* * int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Integer是java为int提供的封装类.int的默认值为0, * 而Integer的默认值为null * ,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别 * ,则只能使用Integer * .在JSP开发中,Integer的默认为nul…
基本概念的区分: 1.Integer 是 int 的包装类,int 则是 java 的一种基本数据类型2.Integer 变量必须实例化后才能使用,而int变量不需要3.Integer 实际是对象的引用,当new一个 Integer时,实际上是生成一个指针指向此对象:而 int 则是直接存储数据值4.Integer的默认值是null,int的默认值是0 Integer.new Integer() 和 int 的比较 1.两个 new Integer() 变量比较 ,永远是 false 因为new…
int和Integer的区别 1.Integer是int的包装类,int则是java的一种基本数据类型 2.Integer变量必须实例化后才能使用,而int变量不需要 3.Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象:而int则是直接存储数据值 4.Integer的默认值是null,int的默认值是0 延伸: 关于Integer和int的比较 1.由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变…
如果面试官问Integer与int的区别:估计大多数人只会说道两点,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null.但是如果面试官再问一下Integer i = 1;int ii = 1; i==ii为true还是为false?估计就有一部分人答不出来了,如果再问一下其他的,估计更多的人会头脑一片混乱.所以我对它们进行了总结,希望对大家有帮助. 首先看代码: 1 package com.test; 2 /** 3 * 4 * @author 5 * 6 */ 7…
转载于 http://www.ticmy.com/?p=110 jdk1.5引入了自动装箱(autoboxing)与自动拆箱(unboxing),这方便了集合类以及一些方法的调用,同时也使初学者对其感到非常之困惑.在此,我们来揭开其神秘的面纱. 首先,需要厘清一些概念:1.Integer是一个类,用Integer声明一个变量其是一个对象类型(或者说引用类型):int是基本类型,用int声明的变量是非对象类型,即不能在其上调用方法.2.“==”作用于对象上的时候,其比较的是对象的引用本身的值(或者…