map.forEach()总结一:报红

map.forEach()报红解决

原因:

map.forEach()为java 8 新特性,需提供java1.8版本支持。

解决

1、Project项目之JDK版本

File -->Project Structure --> Project -->(Ctrl+Shift+Alt+S)将JDK改为1.8

2、Modules模块之Language level

(Ctrl+Shift+Alt+S)Modules–>检查当前模块对应的Sources–>Language level版本至少1.8
map.forEach()报红解决

3、Compiler编译器之Target bytecode version

点击运行还报错
map.forEach()报红解决
(Ctrl+Alt+S)将对应Module的bytecode version改为1.8
map.forEach()报红解决

总结

1,Project Structure里确认两个地方:Project sdk以及project language level
2,Project Structure->Modules里Sources里的Language level
3,Preferences->java Compiler->Per-module bytecode Version
这三个地方需要一致

相关文章: