新版本的变更 / Java 11

import java.util.*;
import java.util.function.*;

// *** before: ***
BiFunction<StringStringString> join1 = (String a, String b) -> a + b;
// an annotation on a parameter required writing the type in full

// *** in version 11: ***
BiFunction<String, String, String> join2 = (var a, var b) -> a + b;
Consumer<String> print = (@Deprecated var s) -> System.out.println(s);

// either every parameter has var, or none of them:
// (var a, b) -> a + b;        // <- error
// (var a, String b) -> a + b; // <- error

print.accept(join1.apply("a""b"));
print.accept(join2.apply("c""d"));