Jika Anda memeriksa API untuk ListAnda akan melihat isinya:
Interface List<E>
Menjadi interfacesarana itu tidak bisa dipakai (tidak new List()mungkin).
Jika Anda memeriksa tautan itu, Anda akan menemukan beberapa classes yang menerapkan List:
Semua Kelas Pelaksana yang Dikenal:
AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack,Vector
Itu bisa dipakai. Gunakan tautan mereka untuk mengetahui lebih banyak tentang mereka, IE: untuk mengetahui mana yang lebih sesuai dengan kebutuhan Anda.
3 yang paling umum digunakan mungkin adalah:
List<String> supplierNames1 = new ArrayList<String>();
List<String> supplierNames2 = new LinkedList<String>();
List<String> supplierNames3 = new Vector<String>();
Bonus:
Anda juga dapat instantiate dengan nilai-nilai, dengan cara yang lebih mudah, menggunakan Arrays class, sebagai berikut:
List<String> supplierNames = Arrays.asList("sup1", "sup2", "sup3");
System.out.println(supplierNames.get(1));
Tetapi perhatikan, Anda tidak diizinkan menambahkan lebih banyak elemen ke daftar itu, karena hal itu fixed-size.
int[] a = {1,2,3}; System.out.println(Arrays.asList(a)); // [[I@70cdd2]