Дисклеймер: я разрабатываю Calk — приложение, из которого выросла эта задача.
Я хотел показать человеку одно число: сколько разных растений он съел за неделю. Задача выглядела так:
meals.flatMap { it.ingredients }
.filter { it.isPlant }
.distinct()
.count()
Четыре строки. Проблема спряталась в третьей: что именно значит distinct?
Помидор и черри — одно растение или два? Сырой и запечённый шпинат? Три грамма петрушки в борще?
Я хотел дать человеку понятный способ заметить однообразие и увидеть, в каком направлении можно расширить рационЧитать полностью »

