[Java]가변 인자

LeeYulhee·2023년 9월 18일
0

👉 가변 인자


  • 메서드에 개수가 정해지지 않은 인수를 전달할 수 있게 해주는 기능
  • 가변인자는 메서드의 마지막 매개변수로만 선언될 수 있음
  • 표현은 타입 뒤에 세 개의 점(...)을 붙여서 함



👉 기본 문법 및 예제


  • 기본 문법
    public void myMethod(String... args) {
      // do something
    }

  • 예제
    public class VarargsExample {
      public static void main(String[] args) {
        printNumbers(1);
        printNumbers(1, 2);
        printNumbers(1, 2, 3, 4);
      }
    
      public static void printNumbers(int... numbers) {
        for (int number : numbers) {
          System.out.print(number + " ");
        }
        System.out.println();
      }
    }


👉 주의 사항


  • 가변인자는 메서드의 마지막 매개변수로만 사용될 수 있음
    public void myMethod(int a, String... args) { }  // 올바른 사용법
    public void myMethod(String... args, int a) { }  // 컴파일 오류

  • 하나의 메서드에는 하나의 가변인자만 사용 가능
    public void myMethod(String... strs, int... nums) { }  // 컴파일 오류

  • 가변인자는 배열로 처리되므로 배열을 직접 전달할 수도 있음
    public static void main(String[] args) {
      int[] arr = {1, 2, 3};
      printNumbers(arr);
    }
    • 앞의 예제 메서드 참고
profile
공부 중인 신입 백엔드 개발자입니다

0개의 댓글