Millised on kogumite rakendused Java programmeerimiskeeles?
sobes.tech AI
Vastus AI-lt
-
Interfaces:
Collection: Põhiliides kõigile kogumitele.List: Järjepidev kogum (indeksitega).Set: Kogum ilma duplikaatideta.SortedSet: Järjepidev kogum ilma duplikaatideta, elemendid on sorteeritud.Map: Assotsiatiivne massiiv (võti-väärtus).SortedMap: Sorteeritud assotsiatiivne massiiv võtmete järgi.Queue: Kogum elementide hoidmiseks enne nende töötlemist.Deque: Kahepoolne järjekord.
-
Klasid (peamised teostused):
Listjaoks:ArrayList: Dynaamiline massiiv. Kiire juurdepääs indeksi järgi, aeglane sisestus/kustutus keskel.LinkedList: Topeltühendatud nimekiri. Aeglane juurdepääs indeksi järgi, kiire sisestus/kustutus keskel.Vector: Vananenud sünkroneeritudArrayListekvivalent.Stack:Vectoralamklass, mis teostab virna (LIFO).
-
Setjaoks: -HashSet: Põhineb hash-tabelil. Ei garanteeri elementide järjekorda. -LinkedHashSet: Põhineb hash-tabelil ja seotud nimekirjal. Säilitab sisestamise järjekorra. -TreeSet: Põhineb punane-must puu struktuuril. Elemendid on sorteeritud kasvavas järjekorras. -
Mapjaoks: -HashMap: Põhineb hash-tabelil. Ei garanteeri paaride järjekorda. -Hashtable: Vananenud sünkroneeritudHashMapekvivalent. -LinkedHashMap: Põhineb hash-tabelil ja seotud nimekirjal. Säilitab sisestamise järjekorra. -TreeMap: Põhineb punane-must puu struktuuril. Paarid on sorteeritud võtmete järgi. -
Queuejaoks: -PriorityQueue: Prioriteedijärjekord. Elemendid eemaldatakse nende loomuliku järjekorra või võrdleja järgi. -ArrayDeque: Kahepoolne järjekord, mis põhineb massiivil. -
Kasulikud tööriistad: -
Collections: Statistilised meetodid kogumitega töötamiseks (sorteerimine, otsing, sünkroniseerimine jms.).
// Näide ArrayList kasutamisest
List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
System.out.println(names.get(0)); // Alice
// Näide HashSet kasutamisest
Set<Integer> numbers = new HashSet<>();
numbers.add(1);
numbers.add(2);
numbers.add(1); // Duplikaat ei lisandu
System.out.println(numbers.size()); // 2
// Näide HashMap kasutamisest
Map<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
ages.put("Bob", 25);
System.out.println(ages.get("Alice")); // 30
// Näide PriorityQueue kasutamisest
Queue<Integer> priorityQueue = new PriorityQueue<>();
priorityQueue.add(3);
priorityQueue.add(1);
priorityQueue.add(2);
System.out.println(priorityQueue.poll()); // 1 (madalaim prioriteet)