티스토리 뷰
자바에서 List나 배열과 같은 일련의 오브젝트들을 접근할 때에는 for, for-each, iterator, while과 같은 반복문, 반복자를 사용한다. 우선 가장 기본적인 for문을 살펴보면, List의 크기를 구해서 그 해당 크기만큼 출력한다.
public class test { public static void main(String[] args) { ArrayList<String> number_list = new ArrayList<String>(); number_list.add("num_1"); number_list.add("num_2"); number_list.add("num_3"); number_list.add("num_4"); number_list.add("num_5"); System.out.print("[For Loop] "); int size = number_list.size(); for(int i=0; i<size;i++){ System.out.print(number_list.get(i) + " "); } } }
하지만, 위와 같은 코드로 구현을 하게 되면, size를 구해서 정해진 값만큼 돌리기가 코딩하기 귀찮을 수 있다. 이런 일련의 list이나 배열에 접근하기 위해서는 for-each문을 많이 사용한다. for-each문은 for문보다 훨씬 사용하기 쉽다.
public class test { public static void main(String[] args) { ArrayList<String> number_list = new ArrayList<String>(); number_list.add("num_1"); number_list.add("num_2"); number_list.add("num_3"); number_list.add("num_4"); number_list.add("num_5"); System.out.print("[For-each Loop] "); for(String s : number_list){ System.out.print(s + " "); } } }
다음과 같이 크기도 구하지 않고 for ( type var : arr ) { ... }의 형식을 적는 것만으로 모든 항목에 접근할 수 있다. 마지막으로 Iterator를 사용하는 방법도 있다.
public class test { public static void main(String[] args) { ArrayList<String> number_list = new ArrayList<String>(); number_list.add("num_1"); number_list.add("num_2"); number_list.add("num_3"); number_list.add("num_4"); number_list.add("num_5"); System.out.print("[Iterator Loop] "); Iterator<String> iter = number_list.iterator(); while(iter.hasNext()){ System.out.print(iter.next() + " "); } } }
number_list.iterator();로 자기자신을 iterator로 저장한다. iterator는 내부적으로 배열이든 list방식으로든 접근하여 next()를 사용해서 다음 포지션 값을 출력해준다.
'Language > Java' 카테고리의 다른 글
[JAVA] String, StringBuilder, StringBuffer의 문자열 합 (0) | 2013.10.21 |
---|---|
[JAVA] System.gc() (0) | 2013.10.21 |
[JAVA] 가변 매개변수 (0) | 2013.09.04 |
[JAVA] 자바 문자열 함수 (5) | 2013.07.01 |
[JAVA] 자바 에러 (0) | 2013.04.24 |
댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
- Total
- Today
- Yesterday