一.关于Integer
一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。
然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。
这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number 类属于 java.lang 包。
下面是一个使用 Integer 对象的实例:
Test.java 文件代码:
public class Test{
public static void main(String[] args){
Integer x = 5;
x = x + 10;
System.out.println(x);
}
}
以上实例编译运行结果如下:
15
当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行加运算,所以要对x进行拆箱。
Integer提供了多个与整数相关的操作方法,例如,将一个字符串转换成整数,Integer中还定义了表示整数的最大值和最小值的常量
二.关于List
List是一个接口
<>表示了List里面放的对象是什么类型的,这样写就表示了,你List里面放的必须是Integer类型的
int的默认值为0,而Integer的默认值为null
三.关于ArrayList
ArrayList类是一个特殊的数组–动态数组。通过添加和删除元素,就可以动态改变数组的长度。
优点:
1、支持自动改变大小 2、可以灵活的插入元素 3、可以灵活的删除元素
局限:
比一般的数组的速度慢一些
ArrayList是List接口的一个实现类。
ArrayList类是继承AbstractList抽象类和实现List接口的一个实现类。
因此,List接口不能被构造,也就是我们说的不能创建实例对象,但是我们可以像下面为List接口创建一个指向自己的对象引用,而ArrayList实现类的实例对象就在这充当了,这句代码的目的是 可以调用 List接口里面的内置函数,add,get等方法;