Sobes.tech
Junior

Čo je to Set v Jave?

sobes.tech AI

Odpoveď od AI

Set v Jave je kolekcia unikátnych prvkov, ktorá nezaručuje poradie uloženia.

Hlavné vlastnosti:

  • Unikátnosť: Nemôže obsahovať duplikáty. Ak sa pokúsite pridať existujúci prvok, operácia bude ignorovaná (závisí od implementácie).
  • Chýba indexovanie: Prvky nie sú prístupné podľa indexu.
  • Rozhranie: Je súčasťou Java Collections Framework a rozširuje rozhranie Collection.

Najčastejšie používané implementácie:

  • HashSet: Najrýchlejšia implementácia, založená na hash tabuľke. Nezaručuje poradie prvkov.
  • LinkedHashSet: Zachováva poradie pridania prvkov, používa prepojený zoznam okrem hash tabuľky.
  • TreeSet: Ukladá prvky v zoradenom poradí (prirodzenom alebo podľa zadaného komparátora), založené na červeno-čiernom strome.

Príklad použitia HashSet:

// Vytvorenie HashSet
Set<String> unikatneMena = new HashSet<>();

// Pridanie prvkov
unikatneMena.add("Alice");
unikatneMena.add("Bob");
unikatneMena.add("Alice"); // Tento prvok bude ignorovaný
unikatneMena.add("Charlie");

// Kontrola, či obsahuje prvok
boolean obsahujeBoba = unikatneMena.contains("Bob"); // true

// Iterácia cez prvky (poradie nie je garantované)
for (String meno : unikatneMena) {
    System.out.println(meno);
}

// Veľkosť množiny
int velkost = unikatneMena.size(); // 3