자바의 기초문법

자바의 Varargs (가변인자)

netyhobby 2016. 5. 19. 09:27

가변인자(Variable Arguments)


- 인자의 개수가 반드시 일치되지 않아도 메서드를 호출할 수 있다.

- 필요에 따라 매개변수를 가변적으로 조정할 수 있다. 

- 전달된 인자는 모두 배열로 관리

- Java SE 6부터 지원


[](일반배열) 문법 대신 ...(가변인자) 문법을 사용한다.


package com.model;


class VarTest {

public void sayEcho(String... names) {

for(int x = 0; x < names.length; x++) {

System.out.print(names[x] + "\t");

}

System.out.println();

}

}


public class Varargs {

public static void main(String[] args) {

VarTest var = new VarTest();

var.sayEcho("홍길동");

var.sayEcho("서울", "부산");

var.sayEcho("봄", "여름", "가을", "겨울");

}

}


String 타입의 가변인자로 정의한 sayEcho는 호출시 1개, 2개, 4개...개수에 상관없이 사용할 수 있다.

일반 배열처럼 개수가 정해져 있지 않고, 같은 메서드 내에서도 자유롭게 개수를 변경하며 사용이 가능하다.



결과)


홍길동

서울 부산

여름 가을 겨울