恐怕这是简单的lambda map函数的问题。但是我不知道如何。下面是我的Java代码,
public SparkConf createSparkConf(String appName, Config config) {
SparkConf sparkConf = new SparkConf().setMaster(config.getString("system.master")).setAppName(appName);
config.getConfigList("spark").map(cfg -> {
String name = "spark." + cfg.getString("name");
String value = cfg.getString("value");
sparkConf.set(name, value);
});
if(config.hasPath("app")) {
config.getConfigList("app").map(cfg -> {
String name = "spark." + cfg.getString("name");
String value = cfg.getString("value");
sparkConf.set(name, value);
});
}
return sparkConf;
}
但是map函数抛出以下异常。
The method map((<no type> cfg) -> {}) is undefined for the type List<capture#1-of ? extends Config>
config.getConfigList("app")
行返回List<Config>
,但我不知道为什么map函数会引发此类错误。有想法吗?
答案 0 :(得分:0)
您正在寻找forEach
方法,因为您没有收集map
操作的结果。您也可以致电list.stream().map(...)
与之联系。