Используйте Stream API с умом

#разработка



Недавно упоминал Stream API. Он начал пользоваться популярностью у Android-разработчиков. Как это часто бывает при появлении нового инструмента, его начали использовать во всех мыслимых и немыслимых ситуациях.



В результате код становится длиннее, сложнее для понимания и менее производительным, чем со стандартными средствами или альтернативами в Stream.



На днях прочитал статью, где автор делится примерами некорректного использования Stream API. Например:

• вместо collection.stream().forEach() , которая делает какую-то операцию для каждого элемента, лучше использовать collection.forEach();

• вместо stream.filter(condition).findFirst().isPresent() удобнее и короче использовать stream.anyMatch(condition);

• заменить stream.sorted(comparator).findFirst() нужно на stream.min(comparator).



Помните о том, что любые инструменты, насколько бы они ни были хорошие, нужно использовать грамотно.