咕噜咕噜502 2021-05-16 14:23 采纳率: 56.6%
浏览 1322
已结题

怎么一次性判断List集合中的所有对象的某一个值等于1?

一个订单中有多个订单项,但是要求是每个订单可能不是一次性完成的,可能先完成一个订单项,在完成另外的,所以我需要等到所有订单项完成,我的订单状态才能变为已完成,我循环判断订单项时,只要有一个订单项完成了,我的订单状态就会变为已完成,所以怎么能一次判断所有订单项都为1的时候才修改订单状态。

下面是不成功的代码,这样判断的话,只要有一个为1,他就改了,求大佬指点!

 

  • 写回答

2条回答 默认 最新

  • 小P聊技术 2021-05-16 15:23
    关注
    package com.auskat.demo.lock;
    
    import java.util.ArrayList;
    import java.util.List;
    import java.util.stream.Collectors;
    
    /**
     * 类文件: TestClass
     * <p>
     * <p>
     * 类描述:
     * <p>
     * 作     者: AusKa_T
     * <p>
     * 日     期: 2021/5/16 0016
     * <p>
     * 时     间: 15:14
     * <p>
     */
    public class TestClass {
    
        public static void main(String[] args) {
            List<PwmOrderItem> orderItemList = new ArrayList<>();;
            orderItemList.add(new PwmOrderItem("1",1));
            orderItemList.add(new PwmOrderItem("2",0));
    
    
            List<PwmOrderItem> orderItems = orderItemList.stream().filter(i -> i.getOrderItemStatus() != 1).collect(Collectors.toList());
    
            if(orderItems.size() == 0) {
                // 全部都是更新状态
                System.out.println("更新状态!");
            }else {
                System.out.println("存在不为1的,不更新状态!");
            }
        }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?