Как посчитать сумму int через лямбду?

Не понимаю принцип реализации подобных примеров, типа найти сумму чисел через лямбда выражения. Это не работает

Runnable sum1 = (a, b, c) -> { a + b + c };
sum1.run();

Ответы (1 шт):

Автор решения: Vadik

Runnable вам не подходит, так как run не принимает ни одного аргумента и ничего не возвращает:

interface Runnable {
    void run();
}

По всей видимости, вам нужна лямбда, которая принимает 3 числа на вход и выдает число на выходе. Тогда создайте свой интерфейс Sum, например, так:

interface Sum {
    int run(int a, int b, int c);
}

Далее, ваш код будет выглядеть так:

Sum sum = (a, b, c) -> {
    return a + b + c;
};
System.out.println(sum.run(1, 2, 3));
→ Ссылка