int 和 Integer 的区别

如题所述

int是java提供的8种原始数据类型之一,Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。Integer 是一个类,是int的扩展,定义了很多的转换方法。另外,Integer提供了多个与整数相关的操作方法,例如,将一个字符串转换成整数,Integer中还定义了表示整数的最大值和最小值的常量。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-09-27

int和Integer的区别

1、Integer是int的包装类,int则是java的一种基本 

2、Integer变量必须实例化后才能使用,而int变量不需要 

3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值 。

4、Integer的默认值是null,int的默认值是0

扩展资料:

integer,整数 / 整型数,与小数 / 相对,是的基本数据类型之一,用以指示变量的数据类型,有时也用于(变量、)的强制数据类型转换。整型数据的长度及其取值范围并不固定,受编译环境影响。在不同的编程语言中做此类型声明时,具体实现方式也可能会有所区别。

Integer 一个整型数据用来存储整数,整数包括,负整数和零。整型常量采用整数表示。如 1991,0,-123等等都是整型常量。而52.0或131.4都不是整型常量。

Integer 变量存储为最接近编译环境的长度,例如在32位的编译环境下,Integer为32位,其范围为 -2^15 到 2^15-1 之间。VB中Integer 的类型声明字符是百分比符号 (%)。Pascal中就是integer。在C语言中被缩写成为int。

参考资料:

本回答被网友采纳
第2个回答  2015-09-19
int是java提供的8种原始数据类型之一。Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别,则只能使用Integer。在JSP开发中,Integer的默认为null,所以用el表达式在文本框中显示时,值为空白字符串,而int默认的默认值为0,所以用el表达式在文本框中显示时,结果为0,所以,int不适合作为web层的表单数据的类型。
在Hibernate中,如果将OID定义为Integer类型,那么Hibernate就可以根据其值是否为null而判断一个对象是否是临时的,如果将OID定义为了int类型,还需要在hbm映射文件中设置其unsaved-value属性为0。
另外,Integer提供了多个与整数相关的操作方法,例如,将一个字符串转换成整数,Integer中还定义了表示整数的最大值和最小值的常量。
第3个回答  推荐于2018-02-23
1.int是基本的数据类型,直接存数值;
  2.Integer是int的封装类;integer 是对象,用一个引用指向这个对象;Integer 是一个类,是int的扩展,定义了很多的转换方法。
3.int和Integer都可以表示某一个数值;
  4.int和Integer不能够互用,因为他们两种不同的数据类型;
 举例说明
  ArrayList al=new ArrayList();
  int n=40;
  Integer nI=new Integer(n);
  al.add(n);//不可以
al.add(nI);//可以integer 是对象,用一个引用指向这个对象。本回答被提问者和网友采纳
第4个回答  2017-08-28
1.int是基本的数据类型,直接存数值;
2.Integer是int的封装类;integer 是对象,用一个引用指向这个对象;Integer 是一个类,是int的扩展,定义了很多的转换方法。
3.int和Integer都可以表示某一个数值;
4.int和Integer不能够互用,因为他们两种不同的数据类型;
举例说明
ArrayList al=new ArrayList();
int n=40;
Integer nI=new Integer(n);
al.add(n);//不可以
al.add(nI);//可以integer 是对象,用一个引用指向这个对象。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网