用户输入和数组

时间:2014-02-21 03:08:05

标签: java arrays double joptionpane

所以我无法获得这段代码,我不知道为什么它不会...

String rawInput = JOptionPane.showInputDialog("Please enter the three side lengths seperated by spaces.");

double[] hold = double.parseDouble(rawInput.split(" "));

我有一个想法是使用另一个字符串数组来初始化值,然后使用for循环和double.parseDouble()将它们放入double数组中,但这对于我想要做的事情来说似乎过于复杂。

4 个答案:

答案 0 :(得分:2)

您的代码无法编译,因为rawInput.split(" ")返回一个String对象数组。您只需要将一个String对象传递给Double.parseDouble()。看起来你需要一个循环来迭代你得到的数组。

答案 1 :(得分:0)

如果只是那么简单。你必须创建一个循环。

答案 2 :(得分:0)

我最终做的是:

    String rawInput = JOptionPane.showInputDialog("Please enter the three side lengths seperated by spaces.");

    double[] doubleHold = new double[3];
    String[] stringHold = rawInput.split(" ");

    for(int i = 0; i < 3; i++)
    {
        doubleHold[i] = Double.parseDouble(stringHold[i]);
    }

我不喜欢它是如何运作的,并认为必须有更好的方法,任何人都有更好的方式?

答案 3 :(得分:0)

String rawInput = JOptionPane.showInputDialog("Please enter the three side lengths seperated by spaces.");
String[] inputs = rawInput.split(" ");
double[] values = new double[inputs.length];
for (int i = 0; i < inputs.length; i++) {
    values[i] = Double.parseDouble(inputs[i]);
}

试试这个!