Java - 가변 Argument 선언하고 사용하기
최대 1 분 소요
Java - 가변 Argument 선언하고 사용하기
- 대부분의 함수는 정해진 수의 argument를 넘겨받습니다. 그리고 디자인 측면에서도, 이게 훨씬 좋은 설계방식이라고 생각하고요.
- 다만, 경우에 따라, argument의 수가 여러 개 들어오도록 설계할 때도 있죠.
- 가령
sum(a, b)
, sum(a, b, c)
처럼, 2개의 합, 3개의 합 이런 식으로 처리해주는 함수를 만들고 싶을 수 있으니까요.
- 다음처럼 argument 자리에
.
3개를 추가해서, int...
로 처리하면 됩니다.
class Main {
public static int sum(int... numbers) {
int s = 0;
for (int i=0; i < numbers.length; i++) {
s += numbers[i];
}
return s;
}
public static void main(String[] args) {
System.out.println(sum(1, 2, 3)); // 6
System.out.println(sum(1, 2, 3, 4, 5, 6)); // 21
// End of the code
}
}
python에서 variable argument
- python에서는 다음처럼 하면 되죠.
- java에서는
int...
와 같이 정의하고,
- python에서는 앞에
*
를 붙여서 정의해주면 됩니다.
def sum_func(*argv):
s = 0
for x in argv:
s += x
return s
print(sum_func(1, 2))
print(sum_func(1, 2, 3))
print(sum_func(1, 2, 3, 4))
댓글남기기