Я занимаюсь упражнением, в котором предлагается создать функциональный интерфейс, метод которого принимает в качестве входных данных целое число k и массив целых чисел и возвращает целое число.Затем я должен назначить экземпляру интерфейса лямбда-выражение, которое возвращает сумму всех значений в массиве, меньшую или равную k.
Для интерфейса я думаю, что я должен сделать что-то вроде:
@FunctionalInterface
public interface FunctionOnAnArray {
int apply(int k, int ... intArray);
}
Однако я не могу понять лямбда-выражение.
public class Test {
int sum = 0;
FunctionOnAnArray f = (k, intArray) -> { for (int i : intArray) if (i <= k) sum += i; return sum; };
}
Это кажется слишком неуклюжим.