循环和 try-with-resources 中的 var

版本新特性 / Java 10

import java.util.*;

var map = Map.of("one", 1, "two", 2);

// *** before: ***
for (Map.Entry<String, Integer> e : map.entrySet()) {
    System.out.println(e.getKey() + " = " + e.getValue());
}
for (int i = 0; i < 3; i++) {
    System.out.print(i);
}

// *** in version 10: ***
for (var e : map.entrySet()) {
    System.out.println(e.getKey() + " = " + e.getValue());
}
for (var i = 0; i < 3; i++) {     // i is int
    System.out.print(i);
}
System.out.println();

try (var scanner = new Scanner("one two")) {
    System.out.println(scanner.next());
}