Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 列表中的一种项目类型_Java - Fatal编程技术网

Java 列表中的一种项目类型

Java 列表中的一种项目类型,java,Java,我正在检查列表中的项目类型是否已满 private LinkedList<Item> items = new LinkedList<>(); items.add(new Item("Movie1", "2020", "2"));//2 right there's the amount items.add(new Item("Movie2", "2012", "3")); items.add(new Item("Movie3", "2011", "3")); items.a

我正在检查列表中的项目类型是否已满

private LinkedList<Item> items = new LinkedList<>();
items.add(new Item("Movie1", "2020", "2"));//2 right there's the amount
items.add(new Item("Movie2", "2012", "3"));
items.add(new Item("Movie3", "2011", "3"));
items.add(new Item("Movie4", "2013", "3"));
private LinkedList items=new LinkedList();
增加(新项目(“电影1”、“2020”、“2”))//2对,这是金额
增加(新项目(“电影2”、“2012”、“3”);
增加(新项目(“电影3”、“2011”、“3”));
增加(新项目(“电影4”、“2013”、“3”);
我限制3个。所以,如果数量是3,那么它是满的

当我说三是电影《2020》中的数量时,
3
。 我是说三个。请原谅误解

我只知道如何检查其中一个项目是否已满。但是有很多人都是满员

我很难检查它们

有人能帮忙吗


谢谢。

定义如下方法将元素添加到列表中:

static void add(LinkedList<Item> items, Item item) {
    boolean full = false;
    for (Item e : items) {
        if (e.equals(item) && e.getId().equals(String.valueOf(LIMIT)) && Integer.valueOf(item.getId()) >= LIMIT) {
            full = true;
        }
    }
    if (full) {
        System.out.println("There is no room for " + item + " in the list");
    } else {
        items.add(item);
    }
}
注意:此解决方案基于以下要求:
id
字段不作为
equals()
的一部分进行计算,即如果两个项目的
名称和
年份
相等,则两个项目相等

@Override
public int hashCode() {
    return Objects.hash(name, year);
}

@Override
public boolean equals(Object obj) {
    Item other = (Item) obj;
    return this.name.equals(other.name) && this.year.equals(other.year);
}

定义一个方法,将元素添加到列表中,如下所示:

static void add(LinkedList<Item> items, Item item) {
    boolean full = false;
    for (Item e : items) {
        if (e.equals(item) && e.getId().equals(String.valueOf(LIMIT)) && Integer.valueOf(item.getId()) >= LIMIT) {
            full = true;
        }
    }
    if (full) {
        System.out.println("There is no room for " + item + " in the list");
    } else {
        items.add(item);
    }
}
注意:此解决方案基于以下要求:
id
字段不作为
equals()
的一部分进行计算,即如果两个项目的
名称和
年份
相等,则两个项目相等

@Override
public int hashCode() {
    return Objects.hash(name, year);
}

@Override
public boolean equals(Object obj) {
    Item other = (Item) obj;
    return this.name.equals(other.name) && this.year.equals(other.year);
}

items.size()是列表的长度“full”是什么意思?是否要确保列表的大小不超过3?items.size()是列表的长度“full”是什么意思?您想确保列表的大小不超过3吗?顺便说一句,当我指的是3时,我指的是移动1 2010
3
,而不是项目的长度。谢谢你,先生。顺便说一句,当我指的是3时,我指的是2010年的动作,而不是物品的长度。谢谢你,先生。