读取GUI文本字段上的double / float值

时间:2016-05-30 03:55:42

标签: java user-interface parsing netbeans double

我试图在NetBeans上构建一个GUI来计算一组值的平均值。目前它使用整数值,但是当我尝试在文本字段中输入十进制值时,它只读取小数点前的部分,然后转到数组中的下一个值(例如,如果我输入1.4, 2.5, 3.6它将其读作1, 2, 3并将平均值计算为2而不是2.5

如何让计算机注册整个值?

    private void getMeanButtonActionPerformed(java.awt.event.ActionEvent evt) {                               

    String[] stringValues = valuesTextField.getText().split(",");
    double[] values = new double[stringValues.length];


  for(int i = 0; i < stringValues.length; i++)
    {
        values[i] = Double.parseDouble(stringValues[i]);
    }

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

    double mean = 0;
    mean = (double)sum / (double)values.length;

    JOptionPane.showMessageDialog(null, mean);
}

顺便说一下,我检查了stringValues数组,并且一切都很好 - 整个值都已注册。在解析中似乎出现了问题。

1 个答案:

答案 0 :(得分:3)

问题是你已经将你的总和定义为int而不是double

sort