Si vous cochez l' API pour Listvous remarquerez qu'il dit:
Interface List<E>
Être un interfacemoyen ne peut pas être instancié (non, new List()c'est possible).
Si vous cochez ce lien, vous trouverez quelques classes qui implémentent List:
Toutes les classes d'implémentation connues:
AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack,Vector
Ceux-ci peuvent être instanciés. Utilisez leurs liens pour en savoir plus à leur sujet, IE: pour savoir ce qui correspond le mieux à vos besoins.
Les 3 plus couramment utilisés sont probablement:
List<String> supplierNames1 = new ArrayList<String>();
List<String> supplierNames2 = new LinkedList<String>();
List<String> supplierNames3 = new Vector<String>();
Bonus:
Vous pouvez également l'instancier avec des valeurs, d'une manière plus simple, en utilisant le Arrays class, comme suit:
List<String> supplierNames = Arrays.asList("sup1", "sup2", "sup3");
System.out.println(supplierNames.get(1));
Mais notez que vous n'êtes pas autorisé à ajouter plus d'éléments à cette liste, tel quel fixed-size.
int[] a = {1,2,3}; System.out.println(Arrays.asList(a)); // [[I@70cdd2]