쉽게 배우는 자바 프로그래밍(우종정) 프로그래밍 문제 풀이 5장 - 2번

2019. 12. 5. 22:00쉽게 배우는 자바 프로그래밍

public class Main {
    public static void main(String[] args) {
        System.out.println(sum(1,2,3,4));
        int arr[] = {2,3};
        System.out.println(sum(1,arr));
        System.out.println(sum(1,2,3,4,5));

    }
    private static int sum (int i, int ... j) {
        int sum2 = 0;
        for (int k : j) {
           sum2 += k;
        }
        return sum2;
    }
}

자바는 가변 길이 변수를 배열처럼 취급한다고 문제에 써있다. 그래서

 private static int sum1 (int i , int ... array) {
        int sum1 = 0;
        for (int k : array) {
            sum1 += array[k];
        }
        return sum1;
    }

    private static int sum2 (int i, int ... j) {
        int sum2 = 0;
        for (int k : j) {
           sum2 += k;
        }
        return sum2;
    }

sum1 메서드와 sum2 메서드는 같다고 판단한다.

나는 그래서 sum2만 넣었다. 결과는 9,5,14로 무리없이 나온다.