JAVA · 기초 문법
가변인자(Varargs)
... 문법으로 가변 개수 인자를 받는 메서드를 작성합니다.
기초 문법입문varargs가변인자오버로드
핵심 설명
... 문법으로 가변 개수 인자를 받는 메서드를 작성합니다.
Java code
public class VarargsDemo {
// 가변인자 메서드
static int sum(int... numbers) {
int total = 0;
for (int n : numbers) {
total += n;
}
return total;
}
// 일반 파라미터 + 가변인자
static String format(String prefix, Object... args) {
StringBuilder sb = new StringBuilder(prefix);
for (Object arg : args) {
sb.append(" ").append(arg);
}
return sb.toString();
}
public static void main(String[] args) {
System.out.println(sum()); // 0
System.out.println(sum(1, 2, 3)); // 6
System.out.println(sum(10, 20)); // 30
// 배열도 전달 가능
int[] arr = {1, 2, 3, 4, 5};
System.out.println(sum(arr)); // 15
System.out.println(format("결과:", 1, "a", true));
}
}학습 팁
가변인자는 내부적으로 배열입니다. 성능이 중요하면 자주 사용하는 인자 개수에 대해 오버로드 메서드를 제공하세요.
주의할 점
가변인자는 메서드당 하나만, 마지막 파라미터에만 올 수 있습니다. void m(int... a, String... b)는 불가능합니다.
자주 묻는 질문
가변인자(Varargs)란 무엇인가요?
... 문법으로 가변 개수 인자를 받는 메서드를 작성합니다.
가변인자(Varargs) 학습 시 주의할 점은 무엇인가요?
가변인자는 메서드당 하나만, 마지막 파라미터에만 올 수 있습니다. void m(int... a, String... b) 는 불가능합니다.
Continue Learning
Java 학습을 이어가세요
총 200개의 독립 HTML 학습 문서 중 하나입니다. 각 문서는 고유 URL과 canonical 메타데이터를 가집니다.