... 이 삽입된 메서드의 선언을 가변 인자 선언이라고 한다.
public static void showAll(String... vargs) { ... }
showAll("Box");
showAll("Box", "Toy", "Apple");
메서드 매개변수에 가변 인자 선언을 하면, 전달되는 인자의 수에 제한을 두지 않을 수 있다. vargs는 배열을 참조하기 때문에 length에 접근하여 그 길이를 확인할 수 있다.
자바 컴파일러는 앞에 선언한 가변 인자 선언 및 메서드 호출문을 다음과 같이 수정하여 컴파일을 완료한다.
public static void showAll(String[] vargs) { ... }
showAll(new String{"Box"});
showAll(new String{"Box", "Toy", "Apple"});
참조
윤성우의 열혈 JAVA 프로그래밍
'JAVA > Java' 카테고리의 다른 글
[Java] 익명 클래스(Anonymous Class)와 람다식(Lambda Expression) (0) | 2022.09.13 |
---|---|
[Java] 어노테이션(Annotation) (0) | 2022.09.13 |
[Java] 열거형(Enumeration Type) (0) | 2022.09.12 |
[Java] 컬렉션 프레임워크 - 컬렉션 기반 알고리즘 (0) | 2022.09.12 |
[Java] 컬렉션 프레임워크 - Map 인터페이스 (0) | 2022.09.11 |
댓글