var是java关键字,Java 中的 var 关键字及代码示例

本文将介绍是 Java 中的 var 关键字以及如何使用它。

从 Java 10(JDK 10)开始,var 关键字已添加到 Java 语言中,支持局部变量类型推断,在该功能中,Java 编译器可根据上下文猜测变量的类型,允许程序员不明确声明变量的类型。

请看下声明局部变量的语句:

List list = new ArrayList();

在此变量声明中,类型信息( List 和 String )在左侧和右侧重复两次,导致重复和样板代码。

因此,可以使用 var 关键字来重写:

var list = new ArrayList();

这个例子可能使用 var 关键字的好处并不明显。来看另一个示例:

List list = Arrays.asList("One", "Two", "Three", "Four", "Five");

可以使用 var 关键字重写如下:

var list = Arrays.asList("One", "Two", "Three", "Four", "Five");

这里,Java 编译器可以根据方法的返回类型推断出变量的类型。

然后,可以直接使用变量:

String first = list.get(0);

再看另一个例子,假设有以下方法:

public Map> foo() {

// return a map

}

在不使用 var 的情况下,调用 foo() 方法时必须显式指定类型,如下所示:

Map> map = foo();

如果使用 var,代码将会简化很多:

var map = foo();

因此,使用 var 关键字可以使代码简洁,更具可读性并减少样板代码。 但是,也有一些限制:

只能将 var 用于局部变量(在方法中)而不能用于实例变量(在类级别)。

不能在 Lambda 表达式中使用 var。

不能将 var 用于方法签名(在返回类型和参数中)。

如果不进行显式初始化,则不能使用 var 声明变量:

var x;

这样不允许,因为局部变量声明需要在右侧进行初始化。 同样,下面的声明也是无效的:

var x = null;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值