Se controlli l' API per Listnoterai che dice:
Interface List<E>
Essere un interfacemezzo non può essere istanziato (no new List()è possibile).
Se controlli quel link, troverai alcuni classes che implementano List:
Tutte le classi di esecuzione conosciute:
AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack,Vector
Quelli possono essere istanziati. Usa i loro link per saperne di più, IE: per sapere quale si adatta meglio alle tue esigenze.
I 3 più usati probabilmente sono:
List<String> supplierNames1 = new ArrayList<String>();
List<String> supplierNames2 = new LinkedList<String>();
List<String> supplierNames3 = new Vector<String>();
Bonus:
puoi anche istanziarlo con valori, in un modo più semplice, usando il Arrays class, come segue:
List<String> supplierNames = Arrays.asList("sup1", "sup2", "sup3");
System.out.println(supplierNames.get(1));
Ma tieni presente che non puoi aggiungere altri elementi a tale elenco, in quanto è fixed-size.
int[] a = {1,2,3}; System.out.println(Arrays.asList(a)); // [[I@70cdd2]