배열은 기존의 for(초기화;조건문;증감문) 식이 아닌
for(변수형:변수 리스트) 식으로 for-each를 통해 간편하게 구현을 할 수 있게 되어 있다.
그리고 c에서는 인자를 ... 를 통해서 가변인자를 지원하나
Java는 1.5 부터(JDK 5) varargs를 지원하게 되었다
단, java에서는 ... 내에서는 동일 형에 대해서 만 지원한다.
C언어 스타일로 사용하려면 하나의 변수를 고정하고 그 이후에 대해서 ... 처리 하면 되지만
C언어처럼 ... 이후에는 다른 변수를 추가할 수는 없다.(즉, 다른 형에 대해서는 연속적으로 입력 불가능)
for-each나 ...(varargs)는 autoboxing을 통해 구현되는 것으로 보인다.
[링크 : http://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html] for
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html] for - each
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html]
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html]
[링크 : http://docs.oracle.com/javase/tutorial/java/data/autoboxing.html]
for(변수형:변수 리스트) 식으로 for-each를 통해 간편하게 구현을 할 수 있게 되어 있다.
public void argTest(String... n)
{
//for (int i = 0; i < n.length; i++)
// System.out.println("n[" + i + "]:" + n[i]);
for(String i: n)
System.out.println(i);
System.out.println("-------------------------------");
}
|
Java는 1.5 부터(JDK 5) varargs를 지원하게 되었다
단, java에서는 ... 내에서는 동일 형에 대해서 만 지원한다.
public void argTest(String... n)
vt.argTest("Varargs", "Test");
vt.argTest("100", "600", "900", "1000");
vt.argTest(); |
C언어 스타일로 사용하려면 하나의 변수를 고정하고 그 이후에 대해서 ... 처리 하면 되지만
public void argTest(int s, String... n)
vt.argTest(1);
vt.argTest(1,"100");
|
C언어처럼 ... 이후에는 다른 변수를 추가할 수는 없다.(즉, 다른 형에 대해서는 연속적으로 입력 불가능)
public void argTest(int s, String... n, double e) Error : The variable argument type String of the method argTest must be the last parameter |
for-each나 ...(varargs)는 autoboxing을 통해 구현되는 것으로 보인다.
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html] for - each
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html]
[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html]
[링크 : http://docs.oracle.com/javase/tutorial/java/data/autoboxing.html]
'Programming > Java' 카테고리의 다른 글
java bytecode decompiler - javap (0) | 2014.03.12 |
---|---|
java static initialize (0) | 2014.03.12 |
JUnit 사용 예 (0) | 2014.03.11 |
java class default access modifier (0) | 2014.03.11 |
*.java 파일 하나에 여러개의 class 생성 (0) | 2014.03.11 |