通过扫描仪输入在Java中获取多个值

时间:2015-03-16 15:36:38

标签: java

我试图弄清楚如何从Java中的Scanner类中读取多个条目。我需要输入每个人的姓名,然后比较每个条目的总金额。

这是我的代码:

String[] salespersons = new String[3];

System.out.println("Please enter at least two salespeople but no more than four, to compare sales against: ");

// use scanner class to read input from the user
Scanner input = new Scanner(System.in);

String line = input.nextLine();

String[] values = line.split(",");

for (String s: values) {
    salespersons = values;
}     

由于某些原因,我无法获得销售人员的价值。 (我对Java很陌生,对不起,如果我的问题没有多大意义的话)。

2 个答案:

答案 0 :(得分:3)

你可以写:

salespersons = line.split(",");

您不需要将其分配给中间值变量,然后循环它以将其分配给salespersons。但是如果你确实想这样做,你应该使用索引for循环:

for (int i = 0; i<Math.min(salespersons.length,values.length); i++) {
    salespersons[i] = values[i];
}

答案 1 :(得分:0)

当你使用数组并且想要通过它们的索引值访问它们时,你就无法使用增强的for循环。

您想要的工作方式是:

    String[] salespersons = new String[3];

    ...

    for (int i = 0; i < values.size(); i++){
        salespersons[i] = values[i];
    }