Page 35 - 4656
P. 35

Алгоритми і структури даних. Лабораторний практикум.

                    Ми бачимо, що в отриманій множині два однакові
            елементи зі значенням 10.
                    Тип колекцій TreeSet у Java – це упорядкована множина, і
            відповідно  до  інтуїтивних  понять  про  множину  її  елементи  не
            повинні повторюватися. Наприклад, в результаті операцій


               TreeSet<Integer> set = new TreeSet<>();
               set.add(10);
               set.add(5);
               set.add(10);
               set.add(20);
               set.add(15);
               System.out.println(set);

                    буде виведено


               [5, 10, 15, 20]

                    Спроба  додати  до  множини  елементи  з  тим  самим
            значенням ігноруються.
                    Але  навіть  для  такого  типу,  як  Integer,  можна  добитися
            того, щоб у TreeSet<Integer> були елементи, які повторюються.
            Найпростіший спосіб це зробити полягає в тому, щоб створити
            TreeSet з компаратором, який забезпечує, щоб усі елементи були
            нерівні між собою. Метод compareTo() такого компаратора може
            повертати будь-яке число, крім 0.

                    Спробуємо:


               TreeSet<Integer> set = new TreeSet<>(
               new Comparator<Integer>(){

               @Override
                                                                             33
   30   31   32   33   34   35   36   37   38   39   40