【问题标题】:Java ArrayList<double> not working as wantedJava ArrayList<double> 无法按要求工作
【发布时间】:2021-01-21 22:46:51
【问题描述】:

我正在尝试编写一个程序,该程序将通过用户输入数字并将数字存储到 ArrayList 中。目前我有:

public static void main(String[] args) {
    System.out.println(numberstorage());
}
public static ArrayList<Double> numberstorage() {
    Scanner s = new Scanner(System.in);
    ArrayList<Double> numbers = new ArrayList<Double>();
    System.out.println("Enter a number between 0 - 100");
    do {
        numbers.add(s.nextDouble());
    } while (s.nextDouble() != 0);
    s.close();
    return numbers;
}

当我输入 1、2、3 时,由于某种原因,我的输出是 1.0、3.0。跳过一行输入是否有原因?

【问题讨论】:

    标签: java arraylist methods


    【解决方案1】:

    每个循环调用s.nextDouble() 两次 -- 一次将其添加到numbers,一次检查while 条件。

    相反,您只想调用一次,并且每次都使用相同的值。将其存储在变量中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-18
      • 1970-01-01
      • 2019-01-22
      相关资源
      最近更新 更多