Java中的int和Integer的区别
来源:互联网 发布:windows store下载慢 编辑:程序博客网 时间:2024/06/02 21:31
Java中数据类型可以分基本数据类型和引用数据类型。
而int是基本数据类型,Integer是引用数据类型,也称Integer是int的分装类。八种基本数据类型都有其对应的封装类: byte(Byte), short(Short) , int(Integer),long(Long),boolean(Boolean) ,char(Character),float(Float),
double(Double)
下面我们看下代码:
int[] a=new int[5]; Integer[] b=new Integer[5]; System.out.println(a[0]); System.out.println(b[0]);得到的结果是:0null
从上面的代码可以得出的结论,int类型默认的值是0,而Interger默认的值是null。
他们默认的值我们从一个例子中去理解,可以理解为两个学生考试成绩的表达情况,一个学生没有考试他的成绩可以理解为Integer的默认值。另外一个学生考试得0分他的成绩表达的方式就可以理解为int类型的默认值。所以这两种情况是完全不一样的。
区别:
1. 初始化:int i=1; Integer i=new Integer(1); 也就是基本数据类型而引用类型初始化的差异。
2. Integer类型用在数组中容易导致Java.lang.NullPointerException的情况。空指针异常发生的原因是对象是空的,我们却调用他的属性和方法,就会导致空指针异常。
我们看代码来理解下第二种情况:Student.javapublic class Student { String name; int age;}StudentBiz.javapublic class StudentBiz { public void biz(){ Student[] student=new Student[1]; //student[0]=new String(); //创建对象,将对象赋值给数组元素 System.out.println(students[0].name); } public static void main(String[] args) { new StudentBiz().biz(); }}运行得到的就会是:Exception in thread "main" java.lang.NullPointerException... 上面的代码是将Student类的对象来做数组的元素,但是我们的代码没有创建对象。可能读者会误认为出现异常是因为我的数组元素没有赋值,其实不是。原因就是因为创建对象。 出现的这样的异常情况(只要是引用类型作为数组的元素,都必须要创建对象,将对象作为数组的元素,比如:Integer,String,以及上面代码中的自定义类这些都是引用数据类型,所以特别要避免这样的错误发生)。
第二个区别是大家需要多注意的地方。
0 0
- Java中的int和Integer的区别
- Java中int 和 Integer 的区别
- Java中int和Integer的区别
- Java中Integer和int的区别
- Java中int和Integer的区别
- Java中int和Integer的区别
- java中 int 和 Integer 的区别
- Java int和Integer的区别
- Java int和integer的区别
- Java中int和Integer的区别
- Java中int和Integer的区别
- Java中integer和int的区别
- Java中int和Integer的区别
- java int和Integer的区别
- Java中int和Integer的区别
- java中 int 和 Integer 的区别
- java中int和Integer的区别
- Java中Integer和int的区别
- Leetcode #309 Best Time to Buy and Sell Stock with Cooldown
- hibernate4-基于外键单(双)向一对一的关联映射
- 使用阿里云服务器ESC
- ELK弹性堆栈的心脏--Elasticsearch
- BP算法过程详解
- Java中的int和Integer的区别
- sublime text 添加到鼠标右键功能
- windows下获取pc一些新的批处理脚本
- LeetCode #309 Best Time to Buy and Sell Stock with Cooldown
- spring数据库读写分类实现方式
- String转换到Map结构
- 破解压缩包密码方法
- 基于Dubbo框架构建分布式服务
- Structures and Unions