Яка різниця між методом збирання та зменшення, який використовується для операції скорочення потоку в Java 8?


Відповідь 1:

1. Метод redu () завжди створює нове значення, але збирає () метод оновлює або мутує існуюче значення.

2. зменшити () виконує скорочення, тоді як збір () виконує зменшення змін.

Зменшення стосується процесу об'єднання всіх елементів у потоці повторно для отримання єдиного значення, яке повертається в результаті операції скорочення

Для додавання всіх номерів списку:

Використання скорочення ()

Список список = Arrays.asList (3,2,5,6); int sum = list.stream (). зменшити (0, Integer :: sum); System.out.println (сума);

Використання збирання ()

IntSummaryStatistics stats = list.stream (). Collection (Collectors.summarizingInt (i-> i)); System.out.println (stats.getSum ());