簡體   English   中英

在GUI文本字段上讀取double / float值

[英]Reading a double/float value on GUI text field

我正在嘗試在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數組,那里一切都很好-整個值都被注冊了。 解析中似乎出了點問題。

問題是您將和定義為int而不是double

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM