var 声明局部变量

在 Java 10 中引入了 var 关键字,用于声明局部变量。虽然 Java 10 首次支持了这一特性,但它在 Java 11 中继续得到了广泛的应用和优化。

var 是 Java 中的一种 局部变量类型推断(Local Variable Type Inference) 的机制。通过它,编译器会自动推断变量的类型,而不是由开发者显式声明类型。

例如简化集合处理代码,避免再写类型:

public class VarInCollections {
    public static void main(String[] args) {
        // 显式声明 list 的类型为 List<String>
        java.util.List<String> list = java.util.List.of("Apple", "Banana", "Cherry");
 
        // 显式声明循环变量 fruit 的类型为 String
        for (String fruit : list) {
            System.out.println(fruit);
        }
    }
}

用 var 优化后:

public class VarInCollections {
    public static void main(String[] args) {
        var list = java.util.List.of("Apple", "Banana", "Cherry");
        for (var fruit : list) {
            System.out.println(fruit);
        }
    }
}