【发布时间】:2021-04-17 17:09:10
【问题描述】:
Am I allowed to write code this way?
我可以在 map 方法中使用 setter 将值设置为使用流的其他对象吗?
try (BufferedReader bufferedReader = new BufferedReader(new FileReader(csvPath))) {
List<Employee> employees = bufferedReader
.lines()
.skip(1)
.map(l -> {
String[] lines = l.split(",");
Employee employee = new Employee();
employee.setEmployeeId(Long.parseLong(lines[0]));
employee.setFullName(lines[1] + " " + lines[2] + " " + lines[3]);
employee.setGender(lines[4]);
employee.setEmail(lines[5]);
employee.setSalary(Double.parseDouble(lines[6]));
employee.setState((lines[7]));
return employee;
}).collect(Collectors.toList());
【问题讨论】:
-
是的,你可以。但是你觉得它可读吗?
标签: java lambda collections java-8 java-stream