ArrayList中的尖括号泛型不能是基本类型,因为集合里保存的都是地址值,而基本类型的数据没有地址值。
如果希望向集合ArrayList当中存储基本类型数据,必须使用基本类型对应
的“包装类"
基本类型 包装类(引用类型,包装类都位于java.lang包下)
byte Byte
short Short
int Integer 【特殊】
long Long
float Float
double Double
char Character 【特殊】
boolean Boolean
从JDK 1.5+开始,支持自动装箱,自动拆箱。
自动装箱: 基本类型 - - > 包装类型
自动拆箱:包装类型 - - > 基本类型
代码如下:
package 类和对象;
import java.util.ArrayList;
public class Demo06
{
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
//错误写法!泛型只能是引用类型,不能是基本类型
// ArrayList<int> listB = new ArrayList<int>();
ArrayList<Integer> listC = new ArrayList<>();
listC.add(100);
listC.add(200);
System.out.println(listC); // [100, 200]
Integer num = listC.get(1);
System.out.println("第1号元素是:"+num); // 200
}
}
运行结果:
tips:如果不知道左边变量怎么写,可以先用集合下对应的方法
然后再alt+Enter键,左边会自动跳出让你选。
例如listC.get(1); 加alt+Enter
左边会出现Integer 变量名 = listC.get(1);