Junior
Java dasturlash tilida kolleksiyalar qanday amalga oshiriladi?
sobes.tech AI
AIdan javob
-
Interfeyslar:
Collection: Barcha kolleksiyalar uchun asosiy interfeys.List: Tartiblangan kolleksiya (indekslar bilan).Set: Takrorlanmaydigan kolleksiya.SortedSet: Takrorlanmaydigan kolleksiya, uning elementlari tartiblangan.Map: Asosiy massiv (kalit-qiymat).SortedMap: Kalitlar bo'yicha tartiblangan massiv.Queue: Elementlarni ishlov berishdan oldin saqlash uchun kolleksiya.Deque: Ikki tomonlama navbat.
-
Sinflar (asosiy amalga oshirishlar):
-
Listuchun:ArrayList: Dinamik massiv. Indeks bo'yicha tez kirish, o'rtada joylashtirish/ochirish sekin.LinkedList: Ikki bog'langan ro'yxat. Indeks bo'yicha kirish sekin, o'rtada joylashtirish/ochirish tez.Vector: Eski, sinxronlangan,ArrayListga teng.Stack:Vectorning kichik sinfi, stek (LIFO) ni amalga oshiradi.
-
Setuchun:HashSet: Hash jadvali asosida amalga oshirilgan. Tartibni kafolatlamaydi.LinkedHashSet: Hash jadvali va bog'langan ro'yxatga asoslangan. Joylashtirish tartibini saqlaydi.TreeSet: Qizil-oq qiyshiq daraxtga asoslangan. Elementlar o'sish tartibida tartiblangan.
-
Mapuchun:HashMap: Hash jadvali asosida. Kalit-qiymat juftliklarining tartibini kafolatlamaydi.Hashtable: Eski, sinxronlangan,HashMapning tengi.LinkedHashMap: Hash jadvali va bog'langan ro'yxatga asoslangan. Joylashtirish tartibini saqlaydi.TreeMap: Qizil-oq daraxtga asoslangan. Juftliklar kalit bo'yicha tartiblangan.
-
Queueuchun:PriorityQueue: Prioritet navbati. Elementlar tabiiy tartibda yoki solishtiruvchi bilan chiqariladi.ArrayDeque: Array asosida ikki tomonlama navbat.
-
-
Yordamchi:
Collections: Kolleksiyalar bilan ishlash uchun statik metodlar (sortlash, qidirish, sinxronlashtirish va boshqalar).
// ArrayList misoli
List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
System.out.println(names.get(0)); // Alice
// HashSet misoli
Set<Integer> numbers = new HashSet<>();
numbers.add(1);
numbers.add(2);
numbers.add(1); // Takrorlanmaydigan qo'shiladi
System.out.println(numbers.size()); // 2
// HashMap misoli
Map<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
ages.put("Bob", 25);
System.out.println(ages.get("Alice")); // 30
// PriorityQueue misoli
Queue<Integer> priorityQueue = new PriorityQueue<>();
priorityQueue.add(3);
priorityQueue.add(1);
priorityQueue.add(2);
System.out.println(priorityQueue.poll()); // 1 (eng pastki prioritet)