본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Java] Variable Argument 가변인자!?

by 돼지왕 왕돼지 2013. 9. 19.
반응형


 자바, 가변인자 ( Variable Argument )

 

[Java] Variable Argument 가변인자!?


이전부터 알고 있었지만, 기억나지 않고 딱히 쓸 일이 없어서 자주 잊어먹는 가변인자.

이 녀석은 용어도 조금 생소하다.

이 녀석은 영어로 하면 Variable Argument. 즉 argument 가 가변적이라는 이야기인데..

다시 이야기하면, 인자가 몇개가 될지 확실치 않을 때 확장성 있게 정해진 갯수가 아닌, caller 쪽에서 정하는 갯수의 argument 를 갯수 상관없이 마음껏 받을 수 있다는 이야기.


이 녀석은 잘만 쓰면 정말 유용하게 쓰일 수도 있기는 하다.

기본 syntax 만 정리하고 넘어가자.


public void printSth ( String ... printTarget ){

for( int i=0; i < printTarget.length(); i++ ){

// do sth

}

}





가변인자의 경우 인자부에 ... 을 type 과 variable name 사이에 넣어주면 된다.

이 경우 printTarget 즉, variable name 은 자동적으로 array 타입이 된다.


어떤가 잘만쓰면 뭔가 멋지고 유용한 코드가 될 것 같지 않은가? ㅎ

참고로 이 녀석은 JDK 1.5 ( Java 5 ) 부터 등장한 녀석.



반응형

댓글