interface A {
void s();
}
public static void main(String[] args) {
A a = () -> 5; // DOES NOT compile
A b = () -> new Integer(5); // does compile
A c = () -> Stream.of(1, 2, 3); // does compile
}
What is the reason that the first line does not compile and the second and third one does ?