文章

局部变量的类型推断

var ”关键字” 实际上并不是关键字

java7中的类型推断:

List list = new ArrayList<>();

通过从左边的类型推断等式右侧的类型;

java11中的局部类型推断:

var a = “abc”;

String a = “abc”;

上面两行代码实际上并没有本质的差别,只是从形式上简化了编码;当我们创建的对象名很复杂时,可以省去重复写对象名,如:

var a = new ArrayList();

var实际上并不是一个关键字,他只是一种语法

不能用var直接声明对象,如:var a;

这样的操作是不被允许的

var 语法:局部变量的类型推断

注意事项:

```plain text 1)var a; 这样不可以,因为无法推断

2)类的属性的数据类型不可以使用var

1
2
3
4
5
6
7
有参数的lambda表达式使用:

函数式接口:

```plain text
Consumer<T> : 消费型函数式接口
1
public void accept(T t);Consumer<Strring> consumer = t -> System.out.println(t.toUpperCase());consumer.accept("gjaikjnOIH");Consumer<Strring> consumer = (var t) -> System.out.println(t.toUpperCase());consumer.accept("gjaikjnOIH");Consumer<Strring> consumer = (@Nonnull var t) -> System.out.println(t.toUpperCase());consumer.accept("gjaikjnOIH");
本文由作者按照 CC BY 4.0 进行授权