2018年3月20日,oracle发布java10。java10为java带来了很多新特性,其中让人眼前一亮的便是var关键字的引入。
what
•java10引入了局部变量折断 var用于声明局部变量。
如var user=new arraylist<user>();
why
•避免了信息冗余
•对齐了变量名
•更容易阅读
how
•java10之前的变量声明:
1
2
3
4
|
url codefx = new url( "http://codefx.org" )
urlconnection connection = codefx.openconnection();
reader reader = new bufferedreader(
new inputstreamreader(connection.getinputstream()));
|
•java10
1
2
3
4
|
var codefx = new url( "http://codefx.org" );
var connection = codefx.openconnection();
var reader = new bufferedreader(
new inputstreamreader(connection.getinputstream()));
|
•在处理 var时,编译器先是查看表达式右边部分,也就是所谓的构造器,并将它作为变量的类型,然后将该类型写入字节码当中。
attention
•只能用于带有构造器的局部变量,以下场景不适用
1
2
3
4
|
var foo; foo = "foo" ;
var ints = { 0 , 1 , 2 };
var appendspace = a -> a + " " ;
private var getfoo(){}
|
•除了局部变量,for循环是唯一可以使用 var的地方:
1
2
3
4
5
|
var numbers = list.of( "a" , "b" , "c" );
for (var nr : numbers)
system.out.print(nr + " " );
for (var i = 0 ; i < numbers.size(); i++)
system.out.print(numbers.get(i) + " " );
|
总结
以上所述是小编给大家介绍的java 10中的var关键字用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/feichen-2018/p/8650216.html