ArrayList 列表的泛型
在 Java
中,容器类允许你指出其内部对象的类型。
而声明泛型变量时,我们指出两个(而不是一个)类型:变量类型
和 它所存储的数据的类型
。
创建新的 ArrayList
对象时,可以方便地指出将在此列表内存储的值的类型。
ArrayList
示例:
代码 | 说明 |
---|---|
ArrayList<String> list = new ArrayList<String>(); | 创建名为 list 的 ArrayList 变量。 将 ArrayList 对象分配给该变量。 此列表只能存储 String 对象。 |
ArrayList list = new ArrayList(); | 创建名为 list 的 ArrayList 变量。 将 ArrayList 对象分配给该变量。此列表可以存储任意值。 |
ArrayList<Integer> list = new ArrayList<Integer>(); | 创建名为 list 的 ArrayList 变量。 将 ArrayList 对象分配给该变量。 此列表只能存储 Integer 和 int 值。 |
每种原始类型编写了包装类。这些类继承 Object
。看起来如下所示:
原始类型 | 类 | 列表 |
---|---|---|
int | Integer | ArrayList<Integer> |
double | Double | ArrayList<Double> |
boolean | Boolean | ArrayList<Boolean> |
char | Character | ArrayList<Character> |
byte | Byte | ArrayList<Byte> |
我们可以轻松地把 原始类
和与 其相似的类(包装类)
分配给彼此:
示例 |
---|
int a = 5; Integer b = a; int c = b; |
Character c = 'c'; // 文字 c 是 char 类型 char d = c; |
Byte b = (byte) 77; // 文字 77 是 int 类型 |
Boolean isOk = true; // 文字 true 是 boolean 类型 |
Double d = 1.0d; // 文字 1.0d 是 double 类型 |