массиве возвращал бы null?
Типа есть массив [1,1,1] они все равны, и тогда поиск берет первый
Для простых массивов ок, но для объектов есть разница
Тогда приходится пробегаться и проверять не = ли найденный max всем остальным
toSet().maxOrNull()
[ {id: 1, price: 100}, {id: 2, price: 100}, {id: 3, price: 100}, ] toSet тут не вариант
дак вот хотелось бы тут вот так arr.maxByOrNull{ it.price } // null а сейчас arr.maxByOrNull{ it.price } // {id: 1, price: 100}
Тогда, наверное, groupBy. А потом когда найдёшь максимальный, смотришь в группу и сколько там ещё таких элементов - если один то ок, если несколько то не ок. Такого экстеншена, который ты хочешь, наверняка нет. Поэтому просто напиши свой экстеншен.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/max-by-or-null.html
Обсуждают сегодня