首页 > 解决方案 > Java如何使用条件删除对象类型的ArrayList

问题描述

我有一个 ArrayList ArrayList<Item>。我想删除item2from rack1。但我被困在这里。如何使用条件删除 ArrayList 的对象类型?

预期输出将是 [rack1,item1,1, rack1,item3,3, rack2,item2,12, rack3,item1,15, rack3,item1,15]

import java.util.*;
public class Main
{
    public static class Item{
        private String rackNumber, itemNumber;
        private int i;
        
        Item(String rackNumber, String itemNumber, int i){
            this.rackNumber = rackNumber;
            this.itemNumber = itemNumber;
            this.i = i;
        }
        public String getRackNumber(){return rackNumber;}
        public String getItemNumber(){return itemNumber;}
        public int getI(){return i;}
        @Override
        public String toString(){
            return getRackNumber()+","+getItemNumber()+","+getI();
        }
    }
    public static void main(String[] args) {
        Item item1, item2, item3;
        item1 = new Item("rack1", "item1", 1);
        item2 = new Item("rack2", "item2", 12);
        item3 = new Item("rack3", "item1", 15);
        String ss = "sad";
        ArrayList<Item> arrayItem = new ArrayList<>();
        arrayItem.add(item1);
        arrayItem.add(new Item("rack1","item2", 2));
        arrayItem.add(new Item("rack1", "item3", 3));
        arrayItem.add(item2);
        arrayItem.add(item3);
        arrayItem.add(item3);
       
        System.out.println(arrayItem);
        
        for(Iterator<Item> iterator = arrayItem.iterator(); iterator.hasNext(); ) {
            //Delete rack1 item2
        }
        System.out.println(arrayItem);
    }
}

标签: javaarraylist

解决方案


调用remove方法,它返回布尔值


推荐阅读