Sha*_*han 2 java lambda java-8 java-stream
我有以下服务正常使用 Java8
List<ReportCount> getReportDetails(List<String> statusList);
statusList.add(Arrays.asList("SUCCESS"));
statusList.add(Arrays.asList("CANCELLED"));
statusList.add(Arrays.asList("ON_HOLD","INPROGRESS"));
statusList.stream()
.map(reportService::getReportDetails)
.forEach(e -> reportMap.put("report_" + reportMap.size(), e));
Run Code Online (Sandbox Code Playgroud)
如何使用上面的代码为下面的方法传递1个参数.
String id="CA";
List<ReportCount> getReportDetails(List<String> statusList, String id);
Run Code Online (Sandbox Code Playgroud)
有谁可以帮忙.谢谢
首先不使用原始类型:
List<ReportCount> getReportDetails(List<String> statusList, String id);
Run Code Online (Sandbox Code Playgroud)
然后使用lambda表达式:
List<List<String>> listOfStatusList = new ArrayList<>();
listOfStatusList.add(Arrays.asList("SUCCESS"));
listOfStatusList.add(Arrays.asList("CANCELLED"));
listOfStatusList.add(Arrays.asList("ON_HOLD","INPROGRESS"));
String someId = ...;
listOfStatusList.stream()
.map(statusList -> reportService.getReportDetails(statusList, someId))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4003 次 |
| 最近记录: |