자바 메소드 오버로딩, 가변인자, 정수형 합 리턴 함수 예제
○ 비정형인자, 가변인자
파라미터를 1차원 배열객체로 전달받음
가변인자는 무조건 제일 마지막 자리에 와야한다
● 리턴형 함수명(자료형 변수명, 자료형...변수명) {
}
○ 예제소스
파일명 : Test5.java
package java0713;
class MethodTest4 {
// 메소드 add() 정수형값 2개 받아서 합을 리턴해줌
int add(int a, int b) {
return a+b;
}
// 메소드 add() 정수형값 3개 받아서 합을 리턴해줌
int add(int a, int b, int c) {
return a+b+c;
}
// 메소드 add() 정수형값 4개 받아서 합을 리턴해줌
int add(int a, int b, int c, int d) {
return a+b+c+d;
}
// 메소드 add() 정수형값 개수에 상관없이 받아서 합을 리턴해줌
int add(int...num) {
int sum = 0;
for (int n : num) {
sum += n;
}
return sum;
}
// // 에러. 가변인자는 제일 마지막에 와야됨
// int add(int...num, String str) {
// return 0;
// }
int add(String str, double dblNum, int...num) { // 가변인자는 제일 마지막에 와야됨
System.out.println(str);
int sum = 0;
for (int n : num) {
sum += n;
}
return sum;
}
}
public class Test5 {
public static void main(String[] args) {
MethodTest4 mt = new MethodTest4();
System.out.println(mt.add(10, 20));
System.out.println(mt.add(10, 20, 30));
System.out.println(mt.add(10, 20, 30, 40));
// 가변인자로 선언된 오버로딩 메소드 호출
System.out.println(mt.add(10, 20, 30, 40,50));
System.out.println(mt.add(10,20,30,40,50,60,70,80,90,100));
System.out.println(mt.add("문자열", 2.7, 10, 20, 30));
}
}