Wenn Sie den Check - API für ListSie feststellen heißt es:
Interface List<E>
Ein interfaceMittel zu sein, kann nicht instanziiert werden (neinnew List() ist möglich).
Wenn Sie diesen Link überprüfen, finden Sie einige classes, die implementieren List:
Alle bekannten Implementierungsklassen:
AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack,Vector
Diese können instanziiert werden. Verwenden Sie ihre Links, um mehr über sie zu erfahren, IE: um zu wissen, welche besser zu Ihren Anforderungen passt.
Die 3 am häufigsten verwendeten sind wahrscheinlich:
List<String> supplierNames1 = new ArrayList<String>();
List<String> supplierNames2 = new LinkedList<String>();
List<String> supplierNames3 = new Vector<String>();
Bonus:
Sie können es auch auf einfachere Weise mit Werten instanziieren, indem Sie Arrays classFolgendes verwenden:
List<String> supplierNames = Arrays.asList("sup1", "sup2", "sup3");
System.out.println(supplierNames.get(1));
Beachten Sie jedoch, dass Sie dieser Liste keine weiteren Elemente hinzufügen dürfen fixed-size.
int[] a = {1,2,3}; System.out.println(Arrays.asList(a)); // [[I@70cdd2]