java&spring

[Java] 가변 인수

sungjine 2016. 8. 7. 20:00
반응형

 - 가변 인수

 자바5에서 추가된 기능으로 메소드에 동일한 타입의 파라미터의 숫자가 고정적이지 않을 때 사용된다.

 

 - 가변 인수를 사용한 메소드

 void print(String... strs){

    for(String str : strs){
       System.out.println(str);

    }
 }

 

 - 사용법

   * 가변 인수를 사용한 메소드에 들어가는 파라미터는 배열로 컴파일되어 들어간다.

   * 그러므로 배열을 파라미터로 넘겨도 같은 결과를 나타낸다.

print("a");

print("a", "aa");

print("a", "aa", "aaa");

print("a", "aa", "aaa", "aaaa");

print("a", "aa", "aaa", "aaaa", ······);

 

String[] strs = {"a", "aa", ·····};

print(strs);

 

 위와 같이 사용 한다면 위 메소드에 작성한 파라미터의 수 대로 println이 실행된다. 만약 가변 인수이외에 다른 파라미터를 넣는다면 가변 인수를 가장 마지막에 정의해야하는 제약이 있다.

 

 - ex)

void print(int num, String... strs){ ··· }

반응형