2016-03-13 62 views
0

我的方法將求和一個數組的元素(或組件或任何你會稱它們的)。雖然下面的代碼的a.length()部分不起作用。數組求和方法

public double ArraySum(double[] a) 
{ 
    double sum = 0; 
    double Element; 
    for(Element = 0; Element < a.length(); Element++) 
    { 
     sum = sum + a[Element]; 
    } 
} 

誰能告訴我爲什麼.length方法突然不起作用?

回答

3

因爲數組有一個length字段,而不是長度方法。按照慣例,Java變量名稱以小寫字母開頭(方法名稱也是如此; ArraySum應該可能是getArraySumsumArray)。沒有必要使用double作爲循環計數器,並且可以使用+=。更改

double Element; 
for(Element = 0; Element < a.length(); Element++) 
{ 
    sum = sum + a[Element]; 
} 

喜歡的東西

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

你可以使用增強for-each loop

for(double element : a) { //<-- for each element in the array. 
    sum += element;  //<-- add the element to the sum. 
} 
1

我明白了。你對這件事情有點困惑。甚至當我用java開始的時候。

length是一個變量或字段在陣列的情況下,但length()是在串的情況下的方法。

假設我們有一個數組p和字符串q

要獲取長度:

  • p.length
  • q.length()

所以這就是區別。