gpt4 book ai didi

java - 在java中将最近删除的值添加回数组列表中

转载 作者:行者123 更新时间:2023-12-01 17:30:18 25 4
gpt4 key购买 nike

我创建了另一个名为 Item 的类,它具有参数描述(字符串)和价格(整数)。在一个名为 Seller 的单独类中,Item 用于保存特定卖家的商品列表。一切都运行没有错误,但返回的值让我失望。

一种方法将项目添加到 ArrayList,另一种方法在项目“售出”后将其删除。第三种方法将刚刚删除的项目添加回数组列表。

我有两个问题,
1.如果应该只有被删除(出售)的商品,则 sellItem 中应该返回什么。
2.当唯一的参数是上面返回的值(不是描述或价格)时,我如何将项目添加回来。在测试的代码中,i = s.sellItem("one-bedroomcondo");s.acceptReturnedItem(i); 一起给出,因此参数是之前使用过的变量。

这是我的代码:

ArrayList <Item> items = new ArrayList <Item>();

public void addItem(String description, int price) {
Item i = new Item(description, price);
items.add(i);
return;
}
//adds item with two parameters

public Item sellItem(String description) {
for (Item v: items) {
if (v.getDescription() == description) {
items.remove(v);
}
}
return new Item(?); //what are we returning???
}

public Item acceptReturnedItem(Item x) { //where x is the returned item from above
//Item f = new Item(addItem); not sure if this is correct
//items.add(f); would add it??
return new Item(?);
}

最佳答案

以下是您必须进行的更改

1) 您必须创建一个 Item 对象,并将 ArrayList 中标识的 Item 分配给它,然后将其从列表中删除

public Item sellItem(String description) {

for (Item v: items) {
if (v.getDescription() == description) {
items.remove(v);
return v;
}
}
return null;
}

2) 您不需要从 acceptReturnedItem(Item f) 方法返回任何内容

public void acceptReturnedItem(Item f) {
items.add(f);
}

如果您需要返回项目,那么您可以编写如下方法

public Item acceptReturnedItem(Item f) {
items.add(f);
return f;
}

关于java - 在java中将最近删除的值添加回数组列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61134797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com