Java 10推断类型和var关键字简介


Java 10版本(即JDK 18.3)中包含最大的语言更改是引入了推断类型。这种添加与在代码中使用长保留Java'var'关键字的能力相结合,将对程序的读写方式产生重大影响。

Java总是有一种奇怪的语法来声明变量,左侧的清单类型声明必须与等式左侧提供的对象类型进行多态匹配。这创造了一个有点冗长、笨重的语法。

String string = new String();
Random random = new Random();
Integer count = new Integer();

从这个简单的代码片段可以看出,传统开发的Java代码有助于冗长。但是通过使用var保留类型推断,代码可以被清理干净很多。
var string = new String();
var random = new Random();
var count = new Integer();

使用这种新语法,不需要在初始化的左侧显式声明对象类型。相反,如果您查看等式的右侧,则可以简单地推断出对象类型,因此称为推断类型。当然,等式的右边总是对创建什么类型的对象有最终决定权,因此这个Java 10特性并没有真正改变Java语言的工作方式,也不会对代码的编写方式产生任何影响。