Я начну с моего вопроса:
У меня есть массив:
int[] arr = { 1,2,3,4,5 };
, я хочу сохранить значения в List<Integer> li
, например: 14,13,12,11,10
Как эти значения попали в Список li
следующим образом ??
Наши начальные числа: 1,2, 3, 4 и 5 ,Мы можем вычислить следующие суммы, используя четыре из пяти целых чисел:
- Если мы сложим все, кроме 1, наша сумма будет равна 14.
- Если мы сложим все, кроме 2, наша сумма будет13.
- Если мы сложим все, кроме 3, наша сумма будет 12.
- Если мы сложим все, кроме 4, наша сумма будет равна 11.
- Если мы сложим все, кроме 5наша сумма равна 10.
Мой подход и мысли:
Я думал, что у меня уже есть int [] arr
, поэтому я сделаю это для потоковой передачи, теперь я буду filter
каждый элемент один за другим и sum
будет отдыхать в каждой итерации и добавит это в список li
.
List<Integer> li = IntStream.range(0,1).filter(i-> arr[i] !=i).sum();
^^ Это не сработало, я думаю, я могу сделать некоторые это какниже?
IntStream.range(0,1).filter(i-> filter(this is anotherfilter)).sum();
Я не могу этого понять, я хочу решить эту проблему с потоками и Java-8.