Итак, как же им пользоваться?
Напишем элементарный пример
public class MyClass implements Comparable{ String str; public MyClass(String str) { this.str = str; } @Override public int compareTo(MyClass o) { return str.compareTo(o.str); } public static void main(String[] args) { Set ss = new TreeSet (); ss.add(new MyClass("a")); ss.add(new MyClass("e")); ss.add(new MyClass("g")); ss.add(new MyClass("b")); ss.add(new MyClass("c")); for(MyClass s : ss){ System.out.println(s.str); } } }
Теперь объясню все это.
TreeSet работает вполне логично, туда добавляются классы и она их хранит в отсортированном порядке, нюанс тут в том, что для нужного нам порядка сортировки нежно реализовать интерфейс Comparable, или передать в конструктор класс, реализующий интерфейс Comparator, о них я напишу сегодня позже.
"нежно реализовать интерфейс"
ОтветитьУдалитьЭто жесть, рука вздрогнула править.
Этот комментарий был удален автором.
ОтветитьУдалить