Massivin bir mənfi cəhəti var ki, biz massivi yaradanda onun neçə elementdən ibarət olacağını əvvəlcədən təyin etməliyik. Amma listin üstünlüyü odur ki, sonradan genişlənə bilər.
ArrayList list1 = new ArrayList(); ArrayList list2 = new ArrayList(10); // 10-specific number of slots, but not to assign any ArrayList list3 = new ArrayList(list2); System.out.println(list2.size()); // 0 ArrayList<String> list4 = new ArrayList<String>(); ArrayList<String> list5 = new ArrayList<>(); ArrayList<> list55 = new ArrayList<String>(); // DOES NOT COMPILE ArrayList<String> list555 = new ArrayList(); ArrayList list6 = new ArrayList<String>(); ArrayList list7 = new ArrayList<>();
Son iki nümunə “mixing generic with non-generic code” ilə əlaqəlidir. Ətraflı:
http://www.coderanch.com/t/652334/ocajp/certification/difference-ArrayList-ArrayList
ArrayList
List
interfeysini implement edir. List
referansına ArrayList
obyekti mənimsətmək mümkündür, amma əksi mümkün deyil.
List<String> list8 = new ArrayList<>(); ArrayList<String> list9 = new List<>(); // doesn't compile
[topics lang=az]