Даже не знаю, вопрос ли это. Сам вроде разобрался, в чем дело. Но вопрос: валидатор и в других задачах лябмда-выражения будет считать за метод? Сделал задание, все тесты проходит, кроме одного: "Класс Solution должен содержать три метода." Считаем: main, sort, isGreaterThan - 3 штуки. Непонятно. Формально, решение соответсвует условияю. Читаю Хорстманна, дошел до лямбда-функций и функциональных интерфейсов. Классный мужик, сразу объясняет что и как работает, без магии. И закралось сомнение, что вызов (o1, o2) -> isGreaterThan(o1, o2) ? 1 : -1 как-то гадит в скомпилированный класс. Полез искать, чем посмотреть байт-код Java, нашел JByteMod. Он-то и показал, что в классе появился несанционированный метод "lambda$sort$0" Вопрос, кто решал задачи позже: Это так и задумано, что валидатор считает автосозданные методы? В других задачах это используется? Или это косяк валидатора и ему не стоило бы считать методы с $?