String... 이 뭐지? java 매개변수 ...
by 으렴String...에서 ... 점 3개는 왜 붙는 것일까?
실제로 이클립스에서 main이라는 snippet을 치면 곧바로 아래와 같은 메인이 생성된다.
public static void main(String[] args) {
System.out.println("main");
}
String 배열 타입의 arguments를 받겠다 이런 뜻인데 이 코드를 다음과 같이 바꾸어도 잘 동작한다.
public static void main(String... args) {
System.out.println("main can start!");
}
이 ...은 매개변수를 받긴하지만 몇개인지 모른다라는 뜻이다.
즉 몇개의 매개변수를 넣어도 다 받을 수 있다는 뜻이 된다.
public class ClassTest {
public ClassTest() { //기본
this("test", "test1", "test2", "test3");
System.out.println("기본 생성자 End");
}
public ClassTest(String... s) { //String
for (int i = 0; i < s.length; i++) {
System.out.println(s[i]);
}
}
public static void main(String... args) {
System.out.println("main can start!");
ClassTest ct = new ClassTest();
}
}
다음의 예를 실행하면
main can start!
test
test1
test2
test3
기본 생성자 End
이렇게 나온다.
기본 생성자를 부르면 바로 자신(this)을 부르고 String을 매개변수로 받는 생성자를 또 부르게 된다.
순서대로 for문을 돌려출력해보면 test~3까지 4개의 매개변수를 잘 받아온 것을 알 수 있다.
'Programming Language > JAVA' 카테고리의 다른 글
삼항연산자의 활용 (0) | 2019.07.11 |
---|---|
JAVA 설치하기 + 환경변수 설정 (0) | 2019.06.30 |
JAVA Swing Window Builder 설치하기 (0) | 2019.06.02 |
Java String==String 은 true? (0) | 2019.05.31 |
Java Scanner 쓰긔 (0) | 2019.05.29 |
사이트의 정보
코딩하렴
으렴