Bom, vou fazer um resuminho que eu entendi de onde veio a motivação para usar lambdas. Para não criarmos classes que só possuem um método (principalmente interfaces que possuem um único método) podemos usar classes anônimas.
Quando declaramos uma classe anônima, por baixo dos panos ele cria uma classe que implementa uma interface e a implementação do método. Como foi visto, a sintaxe de classes anônimas comprometem a legibilidade do código. Dessa forma, existem os lambdas para facilitar a legibilidade.
1º pergunta: Essa é a motivação para usar lambdas?
2º pergunta: Eu só consigo transformar em lambdas interfaces que definem somente um método? (Imagino que sim porque senão a JVM não saberia qual método executar)
3º pergunta: Como eu sei quais métodos conseguem usar um lambda no parâmetro de um método?