我正在尝试制作此库存计划。在我的交换机4的情况下,我试图从库存文本文件中找到库存少于10件商品的所有商品。到目前为止,我只能找到项目数量最少的项目,当我需要所有小于10的项目时。非常感谢任何帮助。我在这个网站上的第一个问题,所以我希望你对我很温柔哈哈。 :)
case 4:
int lowest = 10;
for( int i = 0; i < allItems.length; i++) {
if( allItems[i].getNumberOfPieces() < allItems[lowest].getNumberOfPieces())
lowest = i;
}
System.out.println("\nThe items that have less than 10 pieces in stock: " + allItems[lowest]);
break;
同样,这是我的第一个问题,如果问得不好,我会道歉。
答案 0 :(得分:0)
由于你需要一个低于10的项目的 LIST ,你显然需要一个数据结构来存储多个项目,而不是像变量request
那样。所以你需要这样的东西:
lowest
答案 1 :(得分:0)
int lowest = 10;
List<Item> items = new List<Item>(); //Item is supertype of all items
for (int i = 0; i < allItems.length; i++)
{
if (allItems[i].getNumberOfPieces() < lowest)
{
items.add(allItems[i];//populate list of items with less than 10
}
}
System.out.println("The items that have less than 10 pieces in stock: ");
for(Item item : items)
{
System.out.println(item.name);
}
答案 2 :(得分:0)
单个 int 变量最低这里不足以存储多个数据。那里你需要ARRAY LIST。
List<Item> data = new ArrayList<>();
for (int i = 0; i < allItems.length; i++) {
if (allItems[i].getNumberOfPieces() < 10) {
data.add(allItems[i]);
}
}
答案 3 :(得分:0)
除了找到最小值,这不是你想要的,你可以在它发现它小于10时立即输出库存物品。这也可以省去制作数据结构的麻烦,除非你我想再次使用该列表。
for( int i = 0; i < allItems.length; i++) {
int pieces = allItems[i].getNumberOfPieces();
if( pieces < 10)
System.out.println(pieces); //or whatever you'd like to print related to this index..
}