Перемножение элементов ArrayList без использования цикла for

122
01 апреля 2019, 02:00

У меня есть

List<Double> arg = new ArrayList<>();

состоящий из N элементов, можно ли получить произведение этих N элементов не используя for loop.

На счет суммы разобрался:

arg1.stream().mapToDouble(dbl -> dbl).sum()

а вот с произведение не клеится.

Answer 1

Есть отличный вариант использовать функцию reduce(). Вот Вам пример использования перемножения всех элементов в ArrayList:

List<Double> arg = new ArrayList<>();
arg.add(4.0);
arg.add(5.0);
arg.add(0.0);
double mult = arg.stream()
    .mapToDouble(a -> a)
    .reduce(1, (a, b) -> a * b);
System.out.println(mult);

Проверить работоспособность данной программы Вы можете здесь: https://rextester.com/LZM95702

READ ALSO
PopupWindow углы сделать прозрачными

PopupWindow углы сделать прозрачными

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

137
Java FileWriterfilewriet

Java FileWriterfilewriet

Ребят объясните почему у меня не пишет с новой строки?

126
Ошибка в приложении JavaFx

Ошибка в приложении JavaFx

Скачал с распаковал javafx sdk В папку C:\Program Files\Java\javafx-sdk-11

184
Java оператор &ldquo;if&rdquo; [закрыт]

Java оператор “if” [закрыт]

Написал данный код и он как-то некорректно работает

137