Sobes.tech
Junior

Javaда Set эмне?

sobes.tech AI

AIден жооп

Javaда Set — уникалдуу элементтерден турган коллекция, ал сактоо тартибин кепилдебейт.

Негизги өзгөчөлүктөрү:

  • Уникалдуулук: Кайталаган элементтерди камтышы мүмкүн эмес. Эгер бар элементти кошууга аракет кылсаңыз, операция көз жаздымда калат (ишке ашырылышына жараша).
  • Индекстеүү жок: Элементтер индекс аркылуу жеткиликтүү эмес.
  • Интерфейс: Java Collections Frameworkтин бир бөлүгү болуп саналат жана Collection интерфейсин кеңейтет.

Көбүнчө колдонулган ишке ашырылыштары:

  • HashSet: Эң тез ишке ашырылыш, хеш-таблицага негизделген. Элементтердин тартибин кепилдебейт.
  • LinkedHashSet: Элементтердин кошуу тартибин сактайт, хеш-таблицага кошумча байланышты тизмени колдонуу менен.
  • TreeSet: Элементтерди сорттолгон тартипте сактайт (табиий же белгиленген салыштыргычка ылайык), кызыл-кара даракка негизделген.

HashSet колдонуу мисалы:

// HashSet түзүү
Set<String> уникалдууАты = new HashSet<>();

// Элементтерди кошуу
уникалдууАты.add("Alice");
уникалдууАты.add("Bob");
уникалдууАты.add("Alice"); // Бул элемент эске алынбайт
уникалдууАты.add("Charlie");

// Элемент бар-жогун текшерүү
boolean барбыBobe = уникалдууАты.contains("Bob"); // true

// Элементтер боюнча өтүү (тартиби кепилденбейт)
for (String аты : уникалдууАты) {
    System.out.println(аты);
}

// Коллекциянын өлчөмү
int өлчөм = уникалдууАты.size(); // 3