java - 使用 java8 stream().map 传递两个参数来调用服务方法

标签 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));

如何使用上面的代码为下面的方法再传递 1 个参数。

String id="CA";
List<ReportCount> getReportDetails(List<String> statusList, String id);

谁能帮忙。谢谢

最佳答案

使用原始类型开始:

List<ReportCount> getReportDetails(List<String> statusList, String id);

然后使用 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))

关于java - 使用 java8 stream().map 传递两个参数来调用服务方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48335816/

相关文章:

没有 Graphics2D 的 Java 图形 : Constructing FontMetrics from Font,

java - 为什么这个返回 lambda 的方法取决于接口(interface)方法的返回类型?

c++ - 编写一个模板函数来评估具有任何返回类型的 lambda 函数?

java - 如何删除资源上先前添加的装饰器?

java - gridbaglayout 中不同的行颜色

java - 如何观察文件夹和子文件夹的变化

java - 如何在没有 if 构造的情况下引发异常

java - 流树转换

java - 将双嵌套 for 循环重写为 Java 8 流

lambda - Java 8 - 查找数组中的领导者