如何在Java中初始化List <String>对象?

ahmednabil88:

我无法按照以下代码初始化列表:

List<String> supplierNames = new List<String>();
supplierNames.add("sup1");
supplierNames.add("sup2");
supplierNames.add("sup3");
System.out.println(supplierNames.get(1));

我遇到以下错误:

无法实例化类型 List<String>

我该如何实例化List<String>

监狱 :

如果您检查APIList则会注意到它说:

Interface List<E>

作为一种interface手段,它无法实例化(new List()不可能)。

如果您检查该链接,则会发现一些class实现的List

所有已知的实施类:

AbstractListAbstractSequentialListArrayListAttributeListCopyOnWriteArrayListLinkedListRoleListRoleUnresolvedListStackVector

那些可以实例化。使用它们的链接可以了解有关它们的更多信息,即IE:知道哪个更适合您的需求。

三种最常用的可能是:

 List<String> supplierNames1 = new ArrayList<String>();
 List<String> supplierNames2 = new LinkedList<String>();
 List<String> supplierNames3 = new Vector<String>();

奖励:
您还可以使用,以更简单的方式使用值实例化它Arrays class,如下所示:

List<String> supplierNames = Arrays.asList("sup1", "sup2", "sup3");
System.out.println(supplierNames.get(1));

但请注意,您不允许向该列表添加更多元素fixed-size

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章