我正在学习这个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));
并面对同一行的问题。
请帮我学习收藏品。
答案 0 :(得分:3)
更正项目属性 Java编译器:
不起作用:
<强>使用:强>
答案 1 :(得分:0)
它在我的系统上工作正常。你能检查一下你使用的是JDK8吗?在JAVA 8中引入了Lamdas支持。您可以使用java --version
来测试Java版本。
答案 2 :(得分:0)
回答这个问题
您需要使用4.4(Luna)才能获得Java 8支持。
对于稍后检查过的人可能会有用。
谢谢@ greg-449