Junior
Java'da qanday to'plamlar mavjud?
sobes.tech AI
AIdan javob
Java'da, Java Collections Framework'ga kiradigan quyidagi asosiy kolleksiya interfeyslari mavjud:
-
Collection: Ob'ektlar guruhlari ustida umumiy operatsiyalarni belgilovchi asosiy interfeys. Udan quyidagi sub-interfeyslar meros oladi:List: Tartiblangan kolleksiya (ketma-ketlik). Elementlar takrorlanishi mumkin. Indeks bo'yicha kirishni qo'llab-quvvatlaydi.ArrayList: Dinamik massiv. Indeks bo'yicha tez kirish va oxiriga qo'shish uchun yaxshi. O'rta joyga qo'shish/olib tashlash sekin.LinkedList: Ikki tomonlama bog'langan ro'yxat. Boshlash yoki oxiriga qo'shish/olib tashlash uchun yaxshi. Indeks bo'yicha kirish sekin.Vector:ArrayList'ning sinxronlashtirilgan versiyasi. Eskirgan deb hisoblanadi.Stack:Vectordan meros oladi, stek (LIFO) xulqini amalga oshiradi.
Set: Faqat noyob elementlarni o'z ichiga oladigan kolleksiya. Tartibni kafolatlamaydi.HashSet: Hash jadvali yordamida amalga oshirilgan. Eshik qo'shish, olib tashlash va mavjudligini tekshirish uchun eng tez. Tartibni kafolatlamaydi.LinkedHashSet: Hash jadvali + bog'langan ro'yxat sifatida amalga oshirilgan. Qo'shish tartibini kafolatlaydi.TreeSet: Qizil-oq qiyshiq daraxt yordamida amalga oshirilgan. Elementlarni tartiblangan tartibda saqlaydi.HashSetdan sekinroq, ammoLinkedHashSetdan tezroq qidiruv uchun.
Queue: Qator (FIFO - Birinchi kirgan birinchi chiqadi) uchun mo'ljallangan kolleksiya.PriorityQueue: Elementlar ularning tabiiy tartibi yoki taqqoslovchi yordamida saqlanadi. Eng yuqori ustuvorlikdagi element chiqariladi.Deque: (Double Ended Queue) Ikkala uchidan ham qo'shish va olib tashlashni qo'llab-quvvatlaydi.ArrayDeque: Array asosidagi Deque amalga oshirish.LinkedListga qaraganda samaraliroq.
-
Map: Kalit-qiymat juftlarini saqlovchi kolleksiya. Kalitlar noyob.HashMap: Hash jadvali yordamida amalga oshirilgan. Eshik qo'shish, olib tashlash va mavjudligini tekshirish uchun eng tez. Kalitlarning tartibini kafolatlamaydi.LinkedHashMap: Hash jadvali + bog'langan ro'yxat sifatida amalga oshirilgan. Qo'shish yoki kirishni tartibini kafolatlaydi.TreeMap: Qizil-oq daraxt yordamida amalga oshirilgan. Kalitlar bo'yicha tartiblangan kalit-qiymat juftlarini saqlaydi.HashMapdan sekinroq.HashTable:HashMap'ning sinxronlashtirilgan versiyasi. Eskirgan deb hisoblanadi.
Shuningdek, eski sinflar mavjud bo'lib, ular JCF ga kirmaydi, lekin ba'zan uchraydi:
VectorStackHashtableEnumeration(interfeys)