给列表一个类型
要创建列表,您需要一个类型(任何类,例如String)。这是您的类型List。该List会只存储指定类型的对象。例如:
List<String> strings;
可存储"string1","你好,世界!","goodbye"等,但它不能存储9.2但是:
List<Double> doubles;
可以存储9.2,但不能存储"你好,世界!"。
初始化您的清单
如果您尝试将某些东西添加到上面的列表中,则会得到NullPointerException,因为strings和doubles都等于null!
有两种初始化列表的方法:
选项1:使用实现List的类
List是一个接口,这意味着它没有构造函数,而是类必须重写的方法。ArrayList是最常用的List,尽管LinkedList也很常见。因此,我们像这样初始化列表:
List<String> strings = new ArrayList<String>();
要么
List<String> strings = new LinkedList<String>();
从Java SE 7开始,您可以使用菱形运算符:
List<String> strings = new ArrayList<>();
要么
List<String> strings = new LinkedList<>();
选项2:使用Collections类
的Collections类提供没有创建列出了两个有用的方法List变量:
emptyList():返回一个空列表。
singletonList(T):创建类型T的列表并添加指定的元素。
还有一种使用现有的方法List来填充数据的方法:
addAll(L, T...):将所有指定的元素添加到作为第一个参数传递的列表中。
例子:
import java.util.List; import java.util.Collections; List<Integer> l = Collections.emptyList(); List<Integer> l1 = Collections.singletonList(42); Collections.addAll(l1, 1, 2, 3);