今年3月,Java 10 如期发布,Java 10 是采用新发布周期的第一个版本,提供了 109 项新特性,其中最备受关注的莫过于局部变量的类型推断。所以这里主要记录一下这个特性的用法。
看几个Java 10之前声明变量的例子:
1 | List<String> list = new ArrayList<>(); |
在Java 10 中,只要是编译器能够通过对象类型来确定变量类型的情况下,变量类型声明可以使用var
保留字代替:
1 | var list = new ArrayList<>(); |
引入这个特性使得我们的Java 代码变得更加的简洁易读。除此之外我们也可以在增强for
循环中使用var
:
1 | var list = new ArrayList<>(); |
当然,var
并不是在何时何地都能使用,用于变量声明时,仅局限于具有构造器的变量或基本数据类型,比如下面这些例子编译是不通过的:
1 | var a; |
编译器将会告警: