String names[] = new String[]{"Avinash","Amol","John","Peter"};
java.util.List<String> namesList = Arrays.asList(names);
veya
String names[] = new String[]{"Avinash","Amol","John","Peter"};
java.util.List<String> temp = Arrays.asList(names);
Yukarıdaki İfade, sarmalayıcıyı giriş dizisine ekler. Bu nedenle, ekle ve kaldır gibi yöntemler, liste referans nesnesi 'namesList' için geçerli olmayacaktır.
Mevcut diziye / listeye bir öğe eklemeye çalışırsanız, "iş parçacığında Exception" main "java.lang.UnsupportedOperationException" alırsınız.
Yukarıdaki işlem salt okunur veya salt görüntülenebilir.
Liste nesnesine ekleme veya çıkarma işlemi yapamıyoruz. Fakat
String names[] = new String[]{"Avinash","Amol","John","Peter"};
java.util.ArrayList<String> list1 = new ArrayList<>(Arrays.asList(names));
veya
String names[] = new String[]{"Avinash","Amol","John","Peter"};
java.util.List<String> listObject = Arrays.asList(names);
java.util.ArrayList<String> list1 = new ArrayList<>(listObject);
Yukarıdaki ifadede, bir ArrayList sınıfının somut bir örneğini yarattınız ve bir listeyi parametre olarak ilettiniz.
Bu durumda, add & remove yöntemi, her iki yöntem de ArrayList sınıfından olduğu için düzgün çalışacaktır, bu nedenle burada herhangi bir UnSupportedOperationException almayacağız.
Arraylist nesnesinde yapılan değişiklikler (bir dizi listesine bir öğe ekleme veya bir dizi listesinden bir öğe çıkarma yöntemi) orijinal java.util.List nesnesine yansıtılmayacaktır.
String names[] = new String[] {
"Avinash",
"Amol",
"John",
"Peter"
};
java.util.List < String > listObject = Arrays.asList(names);
java.util.ArrayList < String > list1 = new ArrayList < > (listObject);
for (String string: list1) {
System.out.print(" " + string);
}
list1.add("Alex"); //Added without any exception
list1.remove("Avinash"); //Added without any exception will not make any changes in original list in this case temp object.
for (String string: list1) {
System.out.print(" " + string);
}
String existingNames[] = new String[] {
"Avinash",
"Amol",
"John",
"Peter"
};
java.util.List < String > namesList = Arrays.asList(names);
namesList.add("Bob"); // UnsupportedOperationException occur
namesList.remove("Avinash"); //UnsupportedOperationException
Lists.newArrayList(ia)
ilk seçenek gibi bağımsız bir kopya yapar. Basitçe daha genel ve bakmak daha iyidir.