java - 使用 IntelliJ 自动替换为 var

标签 java intellij-idea

我正在迁移一些 Java 10 之前的代码,我想知道是否 IntelliJ 提供了一种自动重构代码的方法,以将使用实际类型的变量声明替换为 无功只要有可能。
代码充满了以下内容:

String status = "empty";
BigDecimal interest = BigDecimal.ZERO;
List<Future<Boolean>> results = es.invokeAll(tasks);
LocalDate start = LocalDate.of(2020, 1, 1);
我宁愿有:
var status = "empty";
var interest = BigDecimal.ZERO;
var results = es.invokeAll(tasks);
var start = LocalDate.of(2020, 1, 1);
我已经查看了 IntelliJ 设置(代码样式/检查)并且找不到任何东西。

最佳答案

  • 转至 File | Settings ,有选择 Editor | Inspections ,然后在 Java | Java language level migration aids | Java 10 下.
  • 右键单击 Local variable type can be omitted 并选择 Weak Warning或类似。
  • 将光标移动到代码中的任何警告(突出显示为灰色),打开快速修复上下文帮助(alt+enter),地址为 Replace explicit type with 'var'向右移动并选择 Fix all 'Local variable type can be omitted' problems in file

  • 感谢@olga-klisho 的想法(在评论中)

    关于java - 使用 IntelliJ 自动替换为 var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64482017/

    相关文章:

    java - 在 TestNG 中运行 Java 单元测试时消除对 testng.xml 的需求

    java - 从另一个 Java 类调用方法时出现问题

    java - 卡片布局绘制

    android - 如何在 Flutter 项目中让 Intellij Idea 的 Intellisense 在 C++ 和 Kotlin 上工作?

    java - JetBrain IntelliJ IDEA 如何选择 Java 启动

    java - 如何使 JUnit 接受任何 Lambda 表达式

    java - SwingX 和 NetBeans 6.9.1 GUI 设计器 (JXCollapsiblePane/JXTaskPane)

    android - Android Studio升级"Default Activity Not Found"

    java - 使用 Maven 将一个 Java 程序添加为另一个程序的依赖项。

    Android,IntelliJ Idea,更改模块类型