2012-11-27 5 views
-5

클래스의 배열에서 값을 더하는 프로그램을 만들고 있습니다. 이진 연산자에 대한 오류가 계속 발생합니다. 내 코드 :배열의 합을 찾기 위해 루핑 java

public static int sum(Array[] x){ 
    int sum = 0; 
    for (int i = 0; i < x.length; i++){ 
     sum += x[i]; 
    } 
    return sum; 
} 

미리 감사드립니다.

+1

전체 스택 추적을 포함하십시오. 'Array [] x'는'int [] x'가 아니어야합니까? – user1329572

+0

'Array' 클래스는 어떻게 생겼습니까? – GriffeyDog

답변

4

당신이 Array[]를 사용하는 것, 그리고 당신은 아마 x의 유형으로 int[]를 원

(x[i]의 유형입니다) 유형 Array에 대한 operator+이 없습니다.

public static int sum(int[] x){ 
//      ^^ 
//    note the fixed type of the array 
    int sum = 0; 
    for (int i = 0; i < x.length; i++){ 
     sum += x[i]; 
    } 
    return sum; 
} 

보너스 : 단순하고 쉽게 읽을 수 - 당신이 for-each loop

public static int sum(int[] x){ 
     int sum = 0; 
     for (int e : x){ 
      sum += e; 
     } 
     return sum; 
} 
0

당신의 매개 변수를 사용하여 고려할 수는 Array 형과 배열입니다. Array 객체를 "+"보려면 무엇을 기대합니까?

0

제네릭 유형 인 [] []이 아닌 int []를 사용해야합니다.