Разница между однострочными и многострочными лямбда-выражениями заключается в том, что в однострочных тело выражения состоит из одного оператора, и в этом случае фигурные скобки можно опустить. 1 В многострочных тело включает несколько операторов, которые заключаются в фигурные скобки {} и могут включать как действия, так и операторы возврата значения. 1
Таким образом, однострочное лямбда-выражение применяется, когда нужно передать функцию в качестве аргумента к методу, а многострочное даёт возможность выполнять разные операции внутри одного интерфейса, так как включает в себя несколько операторов. 2
В блочных лямбда-выражениях можно использовать внутренние вложенные блоки, циклы, конструкции if, switch, создавать переменные и т. д.. 4