Я работаю над реализацией иерархии, которая имеет дело с Comparator
и интерфейсом Comparable
. Пара вещей, которые для меня неясным:Компаратор/сравнимый/ComparatorChain вопросы
Если я добавляю компараторов в компараторе цепи, что именно делает этот кусок кода означает
chain.addComparator(new sortByTitle());
Я знаю, что
sortByTitle()
аргумент должен быть компаратором, но я не понимаю, как вы реализуете такую функцию? Компаратор требует, чтобы вы реализовали функциюcompare(obj1, obj2)
, которая принимает два аргумента для сравнения друг с другом, как вы получаете от этого к одному вызову (то, что выглядит как конструктор) без аргументов?Скажите, что я реализовал класс под названием
Database
, который хранит некоторые элементы вArrayList
под названиемitem
. Переменнаяitem
сама является частной переменной. В настоящее время в основной программе, вызов, как это сделано:Collections.sort(library.item, chain);
Как можно непосредственно получить доступ к объекту библиотеку «s экземпляр
item
? Спецификация для базы данных гласит, чтоitem
должен быть закрытым, может ли это работать?
Я был бы признателен за любую помощь.
Спасибо за помощь. – Mike