ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java/Iterator
    Java 2020. 7. 9. 20:50

    Collections Framework
    Iterator(반복자) Collections 표준
    아래 코드를 보면 다른 Collections 이지만 Iterator 구현 방식이 동일한 것을 알 수 있다.

    Collections - Map, Set, List

     

    import java.util.*;
    
    public class Example {
        public static void main(String[] args) {
            printList();
            printMap();
        }
    
        private static void printList() {
            List<String> arr = new ArrayList<>();
            arr.add("dog");
            arr.add("cat");
            arr.add("cow");
    
            Iterator<String> it = arr.iterator();
            while (it.hasNext()) {
                System.out.println(it.next());
            }
        }
    
        private static void printMap() {
            HashMap<String, String> arr = new HashMap<String, String>();
            arr.put("1", "Home");
            arr.put("2", "house");
            arr.put("3", "COFFEE");
            arr.put("4", "MOBILE");
            arr.put("5", "something else");
    
            Set<String> keys = arr.keySet();
            Iterator<String> it = keys.iterator();
            while (it.hasNext()) {
                String key = it.next();
                System.out.printf("%s. %s\n", key, arr.get(key));
            }
        }
    }


    다만 Iterator 가 for 문을 쓰는 것보다 더 빠른지 어떤지는 모르겠다.
    아무튼 Iterator 도 결국엔 for 문으로 짜인 메서드 조합이긴 하다.
    그렇다고 if, for 문만 알면 모든 다 개발할 수 있다는 헛소리는 안 하는 게 좋겠다. 연금술로 사람을 만들어 낼 수 있다는 소리만큼 헛소리 같으니까.
    꼭 말해야겠다면 메모장을 열어 직접 Iterator 클래스 구현해서 원리를 설명한 뒤 하는 걸 추천한다.


    https://skkcha.tistory.com/m/23

     

    'Java' 카테고리의 다른 글

    Java/객체 정의  (0) 2020.07.18
    Java/Arrays  (0) 2020.07.12
    Java/Iterator  (0) 2020.07.09
    Java/JUnit 예제  (0) 2020.06.15
    [Java][정리] 위임(delegation)과 구현/포함(Composite) 개념  (3) 2018.03.26
    [Java][정리] Collection Framework - Iterator(반복자) 사용하는 이유  (0) 2018.02.13

    댓글 0

Designed by Tistory.