Можно ли каким-либо образом переопределить метод сравнения / сравнения с методами классов Integer и String? - PullRequest
1 голос
/ 20 апреля 2019

Чтобы настроить порядок элементов в TreeSet Я должен сделать следующее

  1. Реализация сопоставимого интерфейса
  2. Переопределить метод CompareTo в классе этого элемента

Аналогично, есть ли способ сделать то же самое для класса String и класса Integer?

1 Ответ

1 голос
/ 20 апреля 2019

TreeSet получает Comparator, поэтому вы можете определить другой метод сравнения, например, я хочу отсортировать строки по второму символу

TreeSet<String> treeSet = new TreeSet<>(Comparator.comparing(a -> a.substring(1, 2)));
treeSet.add("avec");
treeSet.add("ipsum");
treeSet.add("lorem");

выведет

[lorem, ipsum, avec]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...