//different types of items purchased
System.out.print("How many different types of items are being purchased? " );
ArraySize = input.nextInt();
input.nextLine();
//arrays - being defined after ArraySize
String[] item = new String[ArraySize]; //each item
int[] itemsPurchased = new int[ArraySize]; //item purchased
double[] price = new double[ArraySize]; //price for each 'line' on the receipt
double[] itemPrice = new double[ArraySize]; //price of item purchased
for (int i=0; i<ArraySize; i++){ //i = variable element counter
//name of item purchased
System.out.print("Item purchased: ");
item[i] = input.nextLine();
//number of items purchased
System.out.print("Quantity: ");
itemsPurchased[i] = input.nextInt();
input.nextLine();
//determines price of item based on what was purchased
if (item.equals("Shoes") || item.equals("shoes") || item.equals("SHOES"))
itemPrice[i] = 50.00;
if (item.equals("T-Shirt") || item.equals("t-shirt") || (item.equals("T-SHIRT")))
itemPrice[i] = 40.00;
if (item.equals("Shorts") || item.equals("shorts") || item.equals("SHORTS"))
itemPrice[i] = 75.00;
if (item.equals("Cap") || item.equals("cap") || item.equals("CAP"))
itemPrice[i] = 20.00;
if (item.equals("Jacket") || item.equals("jacket") || item.equals("JACKET"))
itemPrice[i] = 100.00;
//adds item and item amount
price[i] += (itemsPurchased[i] * itemPrice[i]);
}//end for
我正在尝试制作类似
的收据行项目----------数量-----------成本
项目----------数量-----------成本
项目----------数量-----------成本
但是我坐起来支付费用的行(我链接的最后一行)在第一个元素之后没有保留任何东西。 我只链接了我认为相关的内容,如果需要,我可以提供其余的代码。
答案 0 :(得分:1)
if (item.equals("Shoes") || item.equals("shoes") || item.equals("SHOES"))
item
的类型为String[]
,永远不会等于String
。您正在测试一个字符串数组是否等于单个字符串。这永远不会回归真实。您很可能希望使用item[i]
而不是item
。
由于上述错误,永远不会为itemPrice[i]
分配值。反过来price[i]
将始终为0。
答案 1 :(得分:1)
你所有的行: if(item.equals(“Shoes”)|| item.equals(“shoes”)|| item.equals(“SHOES”))
应该使用item [i]
所以例如:
if(item [i] .equalsIgnoreCase(“shoes”))