java - 如何检查数组中的值以查找在另一个数组中找到的特定字符串?
问题描述
我需要使用用户在 Java Scanner 中输入的内容,然后确定该特定输入是否被接受作为检查库存数组中是否足够的一部分。此外,int inventory 数组的具体值必须与字符串 items 数组相匹配。例如,对于项目“ScrewDriver”,数量为 500。
这是一个用于家庭作业的程序,我被困在一个步骤中,我必须找出用户想要购买的物品数量。如果输入的数量超过 int[] 库存中的数量,那么我必须让用户知道并退出程序。但如果我确实有足够的库存,那么我必须显示最终的账单金额。我想我能够正确地询问用户他们想要多少,但我坚持使用这些信息来做我的下一个方法。到目前为止,我只能使 purchaseAmount 起作用,但我无法弄清楚 finalBillAmount。我做错了什么?
String[] items = {"Hammer", "Wrench", "Pliers", "Saw", "ScrewDriver" };
double[] prices = {1.99, 2.99, 3.99, 4.99, 5.99};
int[] inventory = {100, 200, 300, 400, 500};
String itemAsked = askUserForItem(items);
String itemInfo = showItemInfo(items, prices, inventory, itemAsked);
int itemAmount = purchaseAmount(items, inventory, itemAsked, itemInfo);
int finalAmount = finalBillAmount(items, inventory, itemAsked, itemInfo, itemAmount);
private static int purchaseAmount(String[] items, int[] inventory, String itemAsked,
String itemInfo) {
int itemAmount = 0;
Scanner myS = new Scanner(System.in);
System.out.printf("\nHow many would you like to purchase? -> ");
itemAmount = myS.nextInt();
return itemAmount;
}
我希望输出显示可用金额并显示最终账单金额,“您的总账单是:$ %s”。此外,如果商品不可用,则输出应为“抱歉,我们只有库存:%s of Item:%s”
解决方案
我将帮助您解决逻辑,剩下的交给您。关于方法:
finalBillAmount(items, inventory, itemAsked, itemInfo, itemAmount);
我们可以看到我们有多种参数可供使用。首先,我们构造一个 for 循环来查看项目相对于项目数组的索引。
int index = 0;
for(int i = 0;i<items.length;i++){
if(itemAsked.equals(items[i]){
index = i;
}
接下来,我们将商品的数量与库存中的数量进行比较:
if(itemAmount>inventory[index]){
System.out.println("Sorry, we don't have that many of "+item[index]);
return 0;
}
else{
//I would need to see how your showItemInfo method works in order to compute the bill.
}
我希望这会有所帮助!
推荐阅读
- r - 闪亮的应用程序产生错误:“参数暗示不同的行数:0、1”
- android - 如何在android撰写卡的角落创建一个图标
- python-3.x - 我们如何从谷歌数据存储中的特定命名空间中获取所有种类的列表?
- class - 如何在 C++ 中的两个层次继承类之间定义友元函数
- apache-kafka - Kafka 消息被发送到单个主题而不是 n 重试主题和 dlt
- html - 页脚悬停在内容的正下方
- php - foreach 中的 PHP foreach 用之前迭代的条目填充数组
- javascript - 从 Node.js 中的远程 Javascript 文件导入命名导出?
- java - 如何在 RecyclerView 中正确更新数据以在插入或更新另一个活动的数据后查看更改
- ios - iOS 15:为通知启用“在应用程序中配置”选项