Junior
Java da qanday kolleksiyalar mavjud?
sobes.tech AI
AIdan javob
Java Collections Framework ko‘plab kolleksiyalarni saqlash va boshqarish uchun ko‘plab kolleksiyalarni taqdim etadi. Asosiy interfeyslar va ularning amalga oshirilishi:
Collection: asosiy interfeys.List: tartiblangan kolleksiya, takroriy elementlarga ruxsat beradi.ArrayList: massivga asoslangan, indeks bo‘yicha tez kirish, o‘rtada sekin qo‘shish/ochirish.LinkedList: ikki tomonlama bog‘langan ro‘yxatga asoslangan, tez qo‘shish/ochirish, sekin indeksga kirish.Vector:ArrayListning thread-safe versiyasi, eskirgan.Stack:Vectorga asoslangan, LIFO tamoyili.
Set: noyob elementlar kolleksiyasi, aniq tartibda emas (faqatSortedSetbundan mustasno).HashSet: hash jadvalga asoslangan, tez kirish va qo‘shish/ochirish.LinkedHashSet: qo‘shilish tartibini saqlaydi.TreeSet: elementlarni tartiblangan tartibda saqlaydi.
Queue: elementlar kolleksiyasi, odatda FIFO tartibida ishlash uchun.PriorityQueue: elementlar ularning prioritetiga ko‘ra chiqariladi.ArrayDeque: ikki tomonlama navbat.
Deque: ikki tomonlama navbat, elementlarni har ikkala tomondan qo‘shish va olib tashlash mumkin.
Map: kalit-qiymat juftliklarini saqlaydi, kalitlar noyob.HashMap: hash jadvalga asoslangan, tez kirish.LinkedHashMap: qo‘shilish yoki kirish tartibini saqlaydi.TreeMap: kalitlar bo‘yicha tartiblangan juftliklarni saqlaydi.Hashtable:HashMapning thread-safe versiyasi, eskirgan.
Thread xavfsiz kolleksiyalar:
Collections.synchronized*: mavjud kolleksiyalar uchun o‘ramlar.Concurrent*:java.util.concurrentpaketida, ko‘p ipli muhit uchun optimallashtirilgan kolleksiyalar.ConcurrentHashMapCopyOnWriteArrayListConcurrentLinkedQueue
Va boshqa kamroq tarqalgan kolleksiyalar.