关于android:Java中可以有’var’关键字吗?

Can there be 'var' keyword in Java?

我的问题看起来很愚蠢......对我而言,这看起来真的很愚蠢。
但是我在震惊地看到关于android的视频教程中的java代码中的var关键字,你可以在这里看到它,例如38分钟......

所以我的问题是,如何在java代码中使用var以及它在java中意味着什么,我们在没有特定类型的情况下不能有引用?


你看到的教程是使用Xamarin,这意味着他们使用C#编写Android应用程序,而不是Java。

Java中没有var关键字。如果您仍然对此有疑问,请查看Java语言的官方关键字列表。


实际上,现在JDK 10已经在2018/03/20发布了java支持使用var关键字来执行局部变量类型推断。

这意味着不要这样做:
String myName ="steeltoe";

你可以做var myName ="steeltoe";

然后,Java将推断它是一个字符串,因此只需更少的输入就等同于以前的版本。

应该注意的是,这不会破坏静态类型,因为java仍会使myName a String,因此不会允许您通过将静态类型赋值为整数来破坏静态类型,例如myName = 1234;


//类似的帖子:

java中的C#var关键字等效?

JEP - JDK增强 - 提案

http://openjdk.java.net/jeps/286

JEP 286:局部变量类型推断

作者Brian Goetz

1
2
3
// Goals:
var list = new ArrayList<String>();  // infers ArrayList<String>
var stream = list.stream();          // infers Stream<String>