我在这个程序上做了一些更多的工作,但现在我被卡住了,因为字符串数组打印,但我不能在我的生活中得到双数组打印。任何帮助将不胜感激!
import java.util.ArrayList;
import java.util.Arrays;
import java.lang.Double;
import java.util.Scanner;
public class inventoryTracker
{
private static Scanner sc;
private static double itemCost;
public static void main(String[] args)
{
System.out.println("Welcome to the Inventory tracker"
+ "\nThis program will accept the names and costs for 10 stocked items."
+ "\nThe program will then output a table with the names, costs and,"
+ "\nprices of the items."
+ "\nPrices are calculated with a 30 percent markup on cost.");
sc = new Scanner(System.in);
String[] product = new String[10];
Double[] itemCost = new Double[10];
for (int i = 0; i < itemCost.length; i++ ){
System.out.print("Enter the item cost :");
itemCost [i]= sc.nextDouble();
}
for (int i = 0; i < product.length; i++){
System.out.print("Enter the product name :");
product[i] = sc.next();
}
System.out.println(Arrays.toString(product));
}
}
答案 0 :(得分:0)
那是因为你要为两个for循环中的字符串数组分配一个字符串。
product= sc.toString();
应该是
product[i] = sc.toString();
和itemCost一样。
答案 1 :(得分:0)
那是因为你要为两个for循环中的字符串数组分配一个字符串。你也在做sc.toString(),这是不正确的。
product= sc.toString();
和
itemCost= sc.nextDouble();
应改为
product[i] = sc.nextLine();
和
itemCost[i] = sc.nextDouble();
和itemCost一样。
答案 2 :(得分:0)
您需要使用index来设置如下值:
product[index] = value;
此外,您正在使用sc.toString()从用户获取字符串。它不会工作你需要使用next()方法从用户获取字符串。
循环应该像:
for (int i = 0; i < product.length; i++){
System.out.print("Enter the product name :");
product[i] = sc.next();
}
for (int i = 0; i < itemCost.length; i++ ){
System.out.print("Enter the item cost :");
itemCost [i]= sc.nextDouble();
}