Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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_String_Int - Fatal编程技术网

Java 我的任务是创建一个可以添加和获取食物的食物仓库,我的代码实现了吗?

Java 我的任务是创建一个可以添加和获取食物的食物仓库,我的代码实现了吗?,java,string,int,Java,String,Int,我被要求对一个包含不同类型食物的食品店进行建模。我应该能够使用addFood方法添加给定数量的食物类型,并使用takeFood方法移除食物。addFood必须采用addFood(String,int)的形式,takeFood必须采用takeFood(String)的形式,即addFood(“Steak”,5)将向foodstore添加5种牛排。我试图上这门课,想知道这是否符合我的任务。为了这个例子,我将只使用2种食物,但实际上还有更多 public class Foodstore { p

我被要求对一个包含不同类型食物的食品店进行建模。我应该能够使用addFood方法添加给定数量的食物类型,并使用takeFood方法移除食物。addFood必须采用addFood(String,int)的形式,takeFood必须采用takeFood(String)的形式,即addFood(“Steak”,5)将向foodstore添加5种牛排。我试图上这门课,想知道这是否符合我的任务。为了这个例子,我将只使用2种食物,但实际上还有更多

public class Foodstore {
    public void addFood(String food, int quantity) {
        addFood("steak", quantity);
        addFood("hay", quantity);
    }
    public void takeFood(String food) {
        takeFood("Steak");
        takeFood("hay");
    }

}

提前谢谢

你的食品店少了一个仓库

Map<String,Integer> warehouse = new HashMap<>();
Map warehouse=newhashmap();
而且,事实上,当你添加食物时,你忽略了被告知添加的食物,这不是一个好主意


这些只是一些起点,当你添加数据时,重新组织你的代码并探索你的仓库,以确保你做得很好。

我不这么认为,你需要某种注册,在那里你可以实际保存信息,比如地图:

Map<String,Integer> register = new HashMap<>();

另外,你正在(错误地)使用递归,我认为这不是你想要的。你的函数addFood一次又一次地调用它自己,没有结束。

请发布你的确切请求。
    public void addFood(String food, int quantity) {
    if (register.containsKey(food)) {
       Integer newAmount = register.get(food) + quantity;
       register.put(food,newAmount);
      }
   else {
       register.put(food,quantity);
        }
}