자바 에서 맵 을 옮 겨 다 니 는 세 가지 방법

4971 단어 Java
참고:http://blog.csdn.net/rosanu_blog/article/details/9002804
맵 을 옮 겨 다 니 는 방법 은 세 가지 가 있 습 니 다.
1. Map. keyset () 모든 키 찾기
keyset () 을 통 해 모든 key 를 찾 아 set 에 저장 한 다음 iterator 로 Set 를 옮 겨 다 니 며 map. get (key) 을 통 해 모든 값 을 찾 습 니 다.
public static void main(String[] args) {
        Map maps=new HashMap();
        maps.put("username", "vivien");
        maps.put("password", "123456");
        maps.put("fav", "music");
        Set keys=maps.keySet();
        if(keys!=null){
            Iterator iterator=keys.iterator();
            while(iterator.hasNext()){
                Object key=iterator.next();
                Object value=maps.get(key);
                System.out.println("key:"+key+";value:"+value);
            }
        }
    }

출력: key: password;value:123456 key:fav;value:music key:username;value:vivien
2. values () 방법 사용
Map 에는 values () 방법 이 있 습 니 다. Collections 형식 을 되 돌려 줍 니 다. 되 돌아 오 는 값 은 map 의 모든 value 집합 입 니 다.
public static void main(String[] args) {
        Map maps=new HashMap();
        maps.put("username", "vivien");
        maps.put("password", "123456");
        maps.put("fav", "music");   
            Collection c=(Collection) maps.values();
            Iterator ite=((Collection) c).iterator();
            while(ite.hasNext())
            {
                System.out.println(ite.next());
            }
    }           
}

출력: 123456 music vivien
3. Map. Entry 사용
Map. Entry 는 Map 의 내부 인터페이스 이다.Map 은 keyset (), entry Set () 등 일반적인 방법 을 제공 합 니 다. keyset () 방법 반환 값 은 Map 에서 key 값 의 집합 입 니 다.entry Set () 의 반환 값 도 set 집합 을 되 돌려 줍 니 다. 이 집합 유형 은 Map. Entry 입 니 다.Map. Entry 는 Map 성명 의 내부 인터페이스 로 이 인 터 페 이 스 는 범 형 으로 Entry 로 정의 합 니 다.
public static void main(String[] args) {
        Map<String,String> maps=new HashMap<String,String>();
        maps.put("username", "vivien");
        maps.put("password", "123456");
        maps.put("fav", "music");
        SetString, String>> entries=maps.entrySet(); 

        if(entries!=null){
            Iterator iterator=entries.iterator();
            while(iterator.hasNext()){
                Map.Entry<String, String> e=(Map.Entry<String, String>) iterator.next();
                System.out.print("key:"+e.getKey());
                System.out.println(" value:"+e.getValue());
            }

        }   
    }
}

출력: key: password value: 123456 key: fav value: music key: username value: vivien
4. 대비
주로 첫 번 째 방법 과 세 번 째 방법 을 비교 하 는데 첫 번 째 방법 은 모든 키 값 을 얻 은 다음 에 매번 순환 할 때마다 맵 을 한 번 훑 어 보 는 것 이다. 이렇게 하면 시간 이 많이 걸린다. 세 번 째 방법 은 맵 에 불필요 한 'get' 호출 을 많이 생략 했다.또한 개발 자 에 게 키워드 와 그 에 대응 하 는 값 을 동시에 유지 하 는 클래스 를 제공한다.맵. Entry 는 setValue () 방법 도 제공 합 니 다. 프로그래머 는 맵 의 값 을 수정 할 수 있 습 니 다.세 번 째 방법 을 건의 하 다

좋은 웹페이지 즐겨찾기