Произведение чисел, заданных одномерным массивом
Возвращает произведение чисел, заданных одномерным массивом array. Для пустого одномерного массива возвращает 0. хоть убей не понимаю что не так.
public int mul(int[] array) {
int x = 1;
for (int i = 0; i < array.length; i++) {
x *= array[i];
}
if (x==0){
return 0;
} else {
return x;
}
}
Ответы (2 шт):
Автор решения: hellomoto
→ Ссылка
сам нашел ответ.
public int mul(int[] array) {
int x = 1;
for (int i = 0; i < array.length; i++) {
x *= array[i];
}
if (array.length==0){
return 0;
} else {
return x;
}
}
Автор решения: Дмитрий
→ Ссылка
Это очень сложный код, я бы сделал так:
public static int mul(int... array) {
return IntStream.of(array).reduce(1, Math::multiplyExact);
}