Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите с NavigableSet<String> myset = new TreeSet<String>(); / 14 сообщений из 14, страница 1 из 1
31.07.2014, 14:29
    #38710063
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
Прочитал документацию про интерфейс NavigableSet<E>, но увы не понял некоторые методы
Объясните пожалуйста на простом человеческом языке методы которые приведены в следующем листинге, спасибо.


NavigableSet<String> myset = new TreeSet<String>();
myset.add("a");
myset.add("b");
myset.add("c");
myset.add("aa");
myset.add("bb");
myset.add("cc");
System.out.println(myset.higher("a"));
System.out.println(myset.ceiling("aaa"));
System.out.println(myset.lower("a"));
System.out.println(myset.floor("bb"));
...
Рейтинг: 0 / 0
31.07.2014, 14:39
    #38710072
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
...
Рейтинг: 0 / 0
31.07.2014, 14:44
    #38710078
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
ceiling и floor обычно относится к финансовому округлению. Пол и потолок.
Типа потолок для 3.14 это 4.00. И т.п.
...
Рейтинг: 0 / 0
31.07.2014, 14:53
    #38710089
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
Blazkowicz,

)) непонятно))) почему именно myset.ceiling("aaa") возвращает b, ведь в наборе вообще нету элемента aaa
...
Рейтинг: 0 / 0
31.07.2014, 14:54
    #38710091
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
s86s, ты когда нибудь писал модульные тесты?
...
Рейтинг: 0 / 0
31.07.2014, 14:54
    #38710094
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
mayton,

Спасибо, но непонятно каким образом идет символьное округление а именно

myset.ceiling("aaa") возвращает b, ведь в наборе вообще нету элемента aaa
...
Рейтинг: 0 / 0
31.07.2014, 14:54
    #38710095
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
s86s)) непонятно))) почему именно myset.ceiling("aaa") возвращает b, ведь в наборе вообще нету элемента aaa
В документации ничего не сказано должен быть тот или мент в коллекции, или нет. Просто аргумент метода сравнивается с элементами коллекции тем же способом, которым элементы отсортированы в этой коллекции.
...
Рейтинг: 0 / 0
31.07.2014, 14:55
    #38710096
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
mayton, это тесты через assert????
...
Рейтинг: 0 / 0
31.07.2014, 14:58
    #38710099
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
Blazkowicz, я так понимаю сравнение аргумента aaa с элементом из набора aaa идет через equals()???? Как он определяет что он больше???? или меньше????
...
Рейтинг: 0 / 0
31.07.2014, 15:02
    #38710103
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
s86sсравнение аргумента aaa с элементом из набора aaa идет через equals()????
Нет, не идёт. Рекомендую читать документацию к NavigableSet и его родителю SortedSet. Открыть для себя Comparator и Comparable. Ну, и вообще любую статью\книжку по Collection Framework стоит осилить с такими вопросами.
...
Рейтинг: 0 / 0
31.07.2014, 15:06
    #38710115
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
Blazkowicz,

ааа точно, TreeSet при вставке сортирует через Comparable. Значит в методе ceiling сравнение тоже происходит через Comparable???
...
Рейтинг: 0 / 0
31.07.2014, 15:07
    #38710118
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
s86sааа точно, TreeSet при вставке сортирует через Comparable. Значит в методе ceiling сравнение тоже происходит через Comparable???
Если Comparator не задан, то да.
...
Рейтинг: 0 / 0
31.07.2014, 15:09
    #38710119
s86s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
Blazkowicz,

Получается по умолчанию, когда мы не задаем свой Comparator, сравнение происходит по Comparable??
...
Рейтинг: 0 / 0
31.07.2014, 15:10
    #38710120
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с NavigableSet<String> myset = new TreeSet<String>();
s86sПолучается по умолчанию, когда мы не задаем свой Comparator, сравнение происходит по Comparable??
Получается так.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите с NavigableSet<String> myset = new TreeSet<String>(); / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]