【发布时间】:2015-04-26 13:19:15
【问题描述】:
我正在从这个site了解收藏
那家伙举的例子
import java.util.HashMap;
import java.util.Map;
public class MapTester {
public static void main(String[] args) {
// keys are Strings
// objects are also Strings
Map<String, String> map = new HashMap<>();
fillData(map);
// write to command line
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
// add and remove from the map
map.put("iPhone", "Created by Apple");
map.remove("Android");
// write again to command line
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
}
private static void fillData(Map<String, String> map) {
map.put("Android", "Mobile");
map.put("Eclipse IDE", "Java");
map.put("Eclipse RCP", "Java");
map.put("Git", "Version control system");
}
}
虽然在上面的程序中我可以理解 k 和 v 变量未定义或本地不存在。
map.forEach((k, v) -> System.out.printf("%s %s%n", k, v));
并以同一行面临问题。
请帮我学习收藏。
【问题讨论】:
-
您是否遇到编译错误?
-
这段代码没有问题。唯一的问题是您的安装系统。检查您是否确实在使用 java 8 进行编译。
-
您使用的是什么 IDE(看起来可能是 Eclipse)?什么版本的IDE?对于 Eclipse,您需要使用 4.4 (Luna) 才能获得 Java 8 支持。
-
您可能使用的是旧版本的 Eclipse。
标签: java eclipse dictionary hashmap java-8