ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] 매개 변수의 수를 모를 때
    [Java] 2023. 7. 3. 02:11

    메소드의 매개 변수는 개수가 이미 정해져 있는 것이 일반적.

     

    하지만 경우에 따라서 메소드를 선언할 때 매개 변수의 개수를 알 수 없는 경우가 생긴다. 

     

    예를 들어 여러 개의 수를 모두 합산하는 메소드를 선언할 때 몇 개의 매개 변수가 입력될지 알 수 없기 때문에 매개 변수의 개수를 결정할 수 없을 것이다.

     

    이 때, 매개 변수를 배열 타입으로 선언하는 것이다. 

     

    int sum1 (int[] values) { }

    sum1 () 메소드를 호출 -> 배열을 넘겨줌 -> 배열의 항목 값들을 모두 전달 가능

     

    배열의 항목 수는 호출할 때 결정된다. 

     

     

    int[] values = { 1, 2, 3 };
    int result = sum(values);
    int result = sum1(new int[] { 1, 2, 3, 4, 5 } );

     

    매개 변수를 배열 타입으로 선언 => 메소드를 호출하기 전에 배열을 생성해야 함

     

    배열을 생성하지 않고 값의 리스트만 넘겨주는 방법을 사용하는 것이 더 간편함.

     

    int sum2(int ... values) { }

     

    메소드의 매개 변수를 "..." 를 사용해서 선언하게 되면, 메소드 호출 시 넘겨준 값의 수에 따라 자동으로 배열이 생성되고 매개값으로 사용됨.

     

    int result = sum2 (1, 2, 3);
    int result = sum2 (1, 2, 3, 4, 5);

     

    "..." 로 선언된 매개 변수는 배열 타입 => 배열을 직접 매개값으로 사용 가능

    int[] values = { 1, 2, 3 };
    int result = sum2(values);
    int result = sum2(new int[] {1, 2, 3, 4, 5});

     

     

    '[Java]' 카테고리의 다른 글

    [Java] 인터페이스  (0) 2023.10.26
    예외 처리  (6) 2023.07.03
    this 와 this() 의 용도  (6) 2023.05.21
Designed by Tistory.