Java 기본 매개 변수
- Java의 기본 매개 변수
- Java에서 var-args를 사용하여 기본 매개 변수 설정
- Java에서 기본 매개 변수를 빈 문자열로 설정
- Java에서 임의 수의 인수와 함께 var-args를 사용하여 기본 매개 변수 설정
이 튜토리얼에서는 Java에서 기본 매개 변수를 구현하는 방법을 소개합니다.
값이 전달되지 않으면 기본 매개 변수가 사용됩니다. 메서드가 여러 인수를 받아들이는 동안 제한된 인수를 전달하려는 경우 유용합니다. 예를 들어, 메소드는 세 개의 인수를 허용하지만 메소드 호출 중에 두 개의 인수 만 전달하려는 경우 Java 컴파일러는 컴파일 오류를 피하기 위해 세 번째 인수의 기본값을 사용합니다.
Java는 기본 매개 변수 값을 지원하지 않지만 var-args 또는 메소드 오버로딩과 같은 일부 내장 솔루션을 사용하여이를 달성 할 수 있습니다. 몇 가지 예를 살펴 보겠습니다.
Java의 기본 매개 변수
이 예에서는 메서드 오버로딩 방식을 사용하여 기본 매개 변수 값을 설정합니다. 그러나 이것은 좋은 해결책은 아니지만 대안으로 사용할 수 있습니다. add()
메소드를 호출하는 동안 기본값으로 0을 전달합니다.
이 접근 방식은 동일한 유형의 두 개의 선택적 매개 변수가있는 경우 작동하지 않으며 그중 하나를 생략 할 수 있습니다.
public class SimpleTesting {
int add(int a, int b) {
return a + b;
}
int add(int a, int b, int c) {
return a + b + c;
}
public static void main(String[] args) {
SimpleTesting test = new SimpleTesting();
int val1 = 10;
int val2 = 20;
int result1 = test.add(val1, 0);
int result2 = test.add(val1, 0, val2);
System.out.println("resutl1 : " + result1);
System.out.println("resutl2 : " + result2);
}
}
출력:
resutl1 : 10
resutl2 : 30
Java에서 var-args를 사용하여 기본 매개 변수 설정
이것은 변수 args 기능을 사용하여 기본 매개 변수를 설정하는 또 다른 접근 방식입니다. var-args
를 사용하면 동일한 유형의 가변 길이 인수를 전달할 수 있습니다. 아래 예를 참조하십시오.
public class SimpleTesting {
int add(int a, int... b) {
int b2 = b.length > 0 ? b[0] : 0;
return a + b2;
}
int add(int a, int b, int c) {
return a + b + c;
}
public static void main(String[] args) {
SimpleTesting test = new SimpleTesting();
int val1 = 10;
int val2 = 20;
int result1 = test.add(val1);
int result2 = test.add(val1, 0, val2);
System.out.println("resutl1 : " + result1);
System.out.println("resutl2 : " + result2);
}
}
출력:
resutl1 : 10
resutl2 : 30
Java에서 기본 매개 변수를 빈 문자열로 설정
문자열 매개 변수의 경우 매개 변수에 빈 문자열을 설정할 수 있습니다. 그러나이 문자열은 기본값으로 null을 보유합니다. 아래 예를 참조하십시오.
public class SimpleTesting {
String defaulPara(int a, String str1, String str2) {
return str1 + str2 + a;
}
public static void main(String[] args) {
SimpleTesting test = new SimpleTesting();
int val1 = 10;
String result1 = test.defaulPara(val1, "", "second");
String result2 = test.defaulPara(val1, "first", "");
System.out.println("resutl1 : " + result1);
System.out.println("resutl2 : " + result2);
}
}
출력:
resutl1 : second10
resutl2 : first10
Java에서 임의 수의 인수와 함께 var-args를 사용하여 기본 매개 변수 설정
var-args의 경우 메서드를 호출하는 동안 인수를 자유롭게 제공 할 수 있습니다. 따라서 제한된 인수 만 제공하려면 제대로 작동합니다. 아래 예를 참조하십시오.
public class SimpleTesting {
int defaulPara(int... a) {
int sum = 0;
for (int i : a) {
sum += i;
}
return sum;
}
public static void main(String[] args) {
SimpleTesting test = new SimpleTesting();
int val1 = 10;
int val2 = 20;
int result1 = test.defaulPara();
int result2 = test.defaulPara(val1);
int result3 = test.defaulPara(val1, val2);
System.out.println("resutl1 : " + result1);
System.out.println("resutl2 : " + result2);
System.out.println("resutl3 : " + result3);
}
}
출력:
resutl1 : 0
resutl2 : 10
resutl3 : 30