У меня есть код ниже.Java 8 Лямбда и потоки
public static ModuleKey getDeployableModuleFromModulesList(List<Module> modules) {
ModuleKey deployableModuleKey = null;
for(Module module : modules) {
List<Artifact> artifacts = module.getArtifacts();
for(Artifact artifact : artifacts) {
if(artifact.getType().equals("ear")) {
return module.getKey();
} else if(!artifact.getType().equals("ear")) {
if(artifact.getType().equals("war")) {
deployableModuleKey = module.getKey();
}
}
}
}
return deployableModuleKey;
}
Как я могу достичь этого с помощью лямбды и потоков Java 8?
Вы должны, по крайней мере, сделать усилие ... Попробуйте сделать это и покажите нам, где вы застреваете! Так вы учите брата! – alfasin
текущая реализация может вернуть null. Нехорошо. рассмотрите возможность возврата необязательно. Или возможно ModuleKey.NONE (специальный нулевой объект). Также вы всегда возвращаете либо module.getKey(), либо null. Для lambdas псевдокод - это 'return module.getArtifacts(). Stream(). Map (module-> module.getKey()). Map (key -> null или key)' –