Java流,根据对象中的条件进行过滤,将值设置为字符串和数组

我是java流的新手。尝试根据Java流中的条件设置2个值。我尝试使用平面图。可能做错了。

我要转换为流的工作代码是:

      String NUME_AGENT = "";
      for(int i = 0; i < reportInputOptionsExtsElemAgent.length; i++){
          if(reportInputOptionsExtsElemAgent[i].getKey().equalsIgnoreCase(loadAGENT_ID)){
              NUME_AGENT = reportInputOptionsExtsElemAgent[i].getValue();
              reportInputOptionsExtsElemAgent = new ReportInputOptionsExt[]{new ReportInputOptionsExt(loadAGENT_ID, reportInputOptionsExtsElemAgent[i].getValue())};
          }
      }

我的尝试:

               String NUME_AGENT  = Arrays.stream(reportInputOptionsExtsElemAgent) //not sure about this
              .flatMap(agent -> agent.stream) //not sure about this
              .filter(rgp-> rgp.getKey().equalsIgnoreCase(loadAGENT_ID))
              .findFirst()
              .map(rgp->rgp.getValue())
              .orElse("");
评论