2016-04-20 142 views
0

我想解決數組的平均值,但我不能將int轉換爲雙精度型?爲什麼發生這種情況?爲什麼我不能將我的整數轉換爲double?

private void AvgOfArray(){ 

      myWindow.clearOut(); 
      int total = 0; 
      int[] a = new int[4]; 
      int i = 0; 
      double avg = 0.0; 
      while (i < a.length) { 
       a[i] = 1 + (int) (Math.random() * 10); 
       myWindow.writeOutLine(a[i]); 
       total += a[i]; 
       i++; 
      } 
      avg = (Double) i; 
      myWindow.writeOutLine(total/Double.parseDouble(i)); 


     } 
+1

Double.parseDouble(i)'不接受'int'。如果你把'total'換成'double',你根本不需要做鑄造。 – dasblinkenlight

回答

1

計算平均正確的方法是一樣的東西,

double avg = total/(double) i; 
myWindow.writeOutLine(avg); 

拳擊的intDouble沒有太大的意義,特別是對再嘗試解析它。

相關問題