【发布时间】:2018-09-09 05:36:58
【问题描述】:
我有一个包含以下代码的 Java 10 项目:
Map<String, String> map = method();
当我将光标放在Map... 上并按Alt+Enter 时,应该有一个选项“用var 替换显式类型”。但是,我的菜单中缺少此选项。
如何启用此选项?我应该清理一些缓存吗?
我正在使用 IDEA 2018.1.1 EAP。
【问题讨论】:
-
这纯粹是推测,但声明+从方法返回值赋值的情况通常倾向于属于类型推断的“对读者不明显”类别,因此 IDE 可能不提供。这可能是可配置的(如果不是,您可能应该将此作为反馈提供给 Jetbrains)。
-
你的
method()签名是什么?尝试更简单的方法,例如int x = 5。项目设置中的语言级别是否设置为 10? -
@TagirValeev
Map<String, String> method()。int x = 5没有帮助。语言级别为 10(如果我手动输入,var正在工作)。 -
我似乎无法在 2018.1 上重现此问题。我假设您的代码在本地范围内?
-
此外,我赞同@JacobG. 的评论,确认我使用的是 2018.1 CE,这让我可以选择
Replace explicit type with 'var'。那么他们的更新可能是一个错误?
标签: java intellij-idea var java-10