Junior
Kādas kolekcijas pastāv Java?
sobes.tech AI
Atbilde no AI
Java ietver šādus galvenos kolekciju interfeisus, kas ir irietilpst Java Collections Framework:
-
Collection: pamata interfeiss, kas definē kopējo operāciju kopām objektiem. No tā manto zeminterfeisi:List: Sakārtota kolekcija (sekvence). Elementi var atkārtoties. Atbalsta piekļuvi pēc indeksa.ArrayList: Dinamisks masīvs. Labs ātrai piekļuvei pēc indeksa un pievienošanai beigās. Lēns ieliekšana/izņemšana vidū.LinkedList: Divvirzienu saistīts saraksts. Labs ieliekšanai/izņemšanai sākumā vai beigās. Lēns piekļuve pēc indeksa.Vector: SinhronizētaArrayListversija. Uzskatāma par novecojušu.Stack: Manto noVector, īsteno steka (LIFO) uzvedību.
Set: Kolekcija, kas satur tikai unikālus elementus. Nav garantēta kārtība:HashSet: Īstenots ar haštabulu. Ātrākais pievienošanai, dzēšanai un pārbaudei. Nav garantēta kārtība.LinkedHashSet: Īstenots kā haštabula + saistīts saraksts. Garantē pievienošanas kārtību.TreeSet: Īstenots ar sarkanu-melnu koku. Glabā elementus sakārtotā kārtībā. Lēnāks nekāHashSet, bet ātrāks diapazona meklēšanai.
Queue: Kolekcija, paredzēta elementu glabāšanai pirms apstrādes (FIFO - pirmais ienāca, pirmais iznāca).PriorityQueue: Elementi tiek glabāti pēc to dabiskās kārtības vai salīdzinātāja. Izvelk elementu ar augstāko prioritāti.Deque: (Divvirzienu rinda) Atbalsta pievienošanu un dzēšanu abās pusēs.ArrayDeque: Realizēts pēc masīva principa. Efektīvāks nekāLinkedListkā rinda/steiks.
-
Map: Kolekcija, kas glabā atslēgas-vērtības pārus. Atslēgas ir unikālas.HashMap: Īstenots ar haštabulu. Ātrākais pievienošanai, dzēšanai un pārbaudei. Nav garantēta kārtība.LinkedHashMap: Īstenots kā haštabula + saistīts saraksts. Garantē pievienošanas vai piekļuves kārtību.TreeMap: Īstenots ar sarkanu-melnu koku. Glabā pārus sakārtotā kārtībā pēc atslēgām. Lēnāks nekāHashMap.HashTable: SinhronizētaHashMapversija. Uzskatāma par novecojušu.
Ir arī novecojušas klases, kas nav daļa no JCF, bet dažreiz tiek izmantotas:
VectorStackHashtableEnumeration(interfeiss)