我可以使用Java Stream API重写以下代码吗?

    List<ActionAttributeType> actionAttributeTypes = executeActionRsType.getBody().getActionAttributes();
    for (ActionAttributeType actionAttributeType : actionAttributeTypes) {
        if (actionAttributeType.getAttributeCode().equals("CONTRACTID")) {
            remoteBankingContractId = actionAttributeType.getAttributeValue();
            break;
        }
    }

最佳答案

以下是一些可以帮助您的内容:

remoteBankingContractId = executeActionRsType.getBody().getActionAttributes().stream().filter(e -> "CONTRACTID".equals(e.getAttributeCode())).findFirst().orElse(null);


或者为您的变量类型获取Optional

Optional<TypeOfYourVariable> remoteBankingContractId = executeActionRsType.getBody().getActionAttributes().stream().filter(e -> "CONTRACTID".equals(e.getAttributeCode())).findFirst();

09-26 08:24