如何使用java 8更新匹配条件的列表对象

如何使用java 8更新匹配条件的列表对象,java,java-8,Java,Java 8,如何使用java 8更新匹配条件的列表对象 列出要迭代的-->对象 list.stream().filter(d -> { if(d.getAvailableTodayInPerson() == true && d.getDistance() > dis) { d.setAvailableTodayInPerson(false); d.setAvailableTodayOutPerson(tru

如何使用java 8更新匹配条件的列表对象

列出要迭代的-->对象

    list.stream().filter(d -> { 
        if(d.getAvailableTodayInPerson() == true && d.getDistance() > dis) {
            d.setAvailableTodayInPerson(false);
            d.setAvailableTodayOutPerson(true);
        }
    });

其实很简单。您可以这样做:

list.stream()
                .filter(d-> d.getAvailableTodayInPerson() == true && d.getDistance() > dis)
                .foreach(d -> {
                    d.setAvailableTodayInPerson(false);
                    d.setAvailableTodayOutPerson(true);
                });

其实很简单。您可以这样做:

list.stream()
                .filter(d-> d.getAvailableTodayInPerson() == true && d.getDistance() > dis)
                .foreach(d -> {
                    d.setAvailableTodayInPerson(false);
                    d.setAvailableTodayOutPerson(true);
                });
你是说

list.stream().forEach(d -> {
     if(d.getAvailableTodayInPerson() == true && d.getDistance() > dis) {
            d.setAvailableTodayInPerson(false);
            d.setAvailableTodayOutPerson(true);
     }
 });
你是说

list.stream().forEach(d -> {
     if(d.getAvailableTodayInPerson() == true && d.getDistance() > dis) {
            d.setAvailableTodayInPerson(false);
            d.setAvailableTodayOutPerson(true);
     }
 });

您不应该更新流管道中的对象。您可以在此处了解更多信息—您不应该更新流媒体管道中的对象。您可以在此处了解更多信息。这将更改原始列表,而不只是在条件匹配时应用更新。我将删除集合和分配。这将更改原始列表,而不是仅在条件匹配时应用更新。我将删除集合和分配。