String[] temp = { "aa", "bb", "cc" };
for (int i = 0; i < temp .length; i++) {
System.out.println(temp[i]);
}
일반적으로 사용하는 for문이다. 솔직히 워낙 익숙한 형태이기 때문에 코딩하기 어렵다거나 그런것도 없을 정도이기는 하다.(가끔 타입에 따라서 length인지 size()인지 헷갈리는것 말고는 ㅡ..ㅡ)
이걸 foreach형태로 사용하면 다음과 같이 작성할 수 있다.
String[] temp = { "aa", "bb", "cc" };
for (String el : temp) {
System.out.println(el);
}
어느쪽이 좋은지는 각자 나름이겠지만 나는 foreach가 훨씬 편하다. 직관적이고 굳이 갯수를 셀 필요도 없고... foreach의 형태는 다음과 같다.
for (type var : iterate) {
body-of-loop
}
루프를 돌릴 객체를 iterate부분에 넣어주고 각 루프에서 나오는 타입과 {} 안에서 사용할 변수명을 var에 지정해 주면 된다. iterate부분에 들어가는 타입은 당연히 루프를 돌릴수 있는 형태인 Array나 Collections가 가능하고 Iterable<E>를 상속받은 객체또한 가능하다.
따로 반복회수를 임의로 주는 형태가 아니라면 foreach를 이용해서 훨씬 간단하게 작성할 수 있다. 당연히 루프를 핸들링할 수는 없기 때문에 1스탭씩 순차적으로 반복할때만 사용할 수 있다.
Comments