Sobes.tech
Junior

რა არის Set Java-ში?

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