본문 바로가기
JAVA

17일차//HaspMap, TreeMap

by aesup 2021. 2. 2.
728x90

HaspMap, TreeMap

package main;

import java.util.HashMap;
import java.util.Iterator;
import java.util.TreeMap;

public class MainClass {
    public static void main(String[] args) {
        /*
          Hashmap : 사전
                  "사과" : "apple"
                  key   : value - >  json
                  Tree 구조**알고리즘 공부
                  이진트리

              TreeMap : HashMap + sorting
         */

        HashMap<Integer,String> hMap = new HashMap<Integer,String>();

        //Map<Integer,String> hMap = new HaspMAp<Integer,String>();

        //추가  key value
        hMap.put(11,"삽입");
        hMap.put(22, "이십이");
        hMap.put(33, "삼십삽");

        String value = hMap.get(22);//key 값을 알아야지 찾을 수 있다.
        System.out.println(value);//이십이 //출력


        //삭제
        String del = hMap.remove(11);
        System.out.println("삭제된 데이터=" + del); //삭제된 데이터: 삽입//출력
        System.out.println("map의 크기=" + hMap.size());
        //검색
        //있다/없다
        boolean b = hMap.containsKey(22);
        if(b == true) {
            String s = hMap.get(22);
            System.out.println("value = " + s);
        }


        //수정
        hMap.replace(22, "이십 + 이");
        System.out.println(hMap.get(22));

        hMap.put(22, "이십플러스이");//중복을 허용하지 않는다.
        System.out.println(hMap.get(22));



        //모든 키 값을 취득
        Iterator<Integer> it = hMap.keySet().iterator();
        while(it.hasNext()) {//다음값을 얻어올 수 있니?
            Integer k = it.next();
            System.out.println("key" + k);
        }


        //좋아하는 과일
        //key:value -> 모두 다 스트링

        HashMap<String, String> fruit = new HashMap<String, String>();
        fruit.put("apple", "사과");
        fruit.put("orange", "오렌지");
        fruit.put("waterMelon", "수박");        
        fruit.put("grape", "포도");
        fruit.put("pear", "복숭아");


        //모든 키값을 취득
        Iterator<String> it1 = fruit.keySet().iterator();
        while(it1.hasNext()) {
            String k = it1.next();
            String v = fruit.get(k);
            System.out.println("key (과일영어로)" + k + v);


        }
        //TreeMap
        //sorting
        TreeMap<String,String> tMap = new TreeMap<String,String>(fruit);

        //오름 
        //Iterator<String> itkey = tMap.KeySet().iterator();
        //위는 오름 차순
        //TreeMap은 소팅이 들어가서 정렬이 가능하다,.
        //내림
        Iterator<String> itkey = tMap.descendingKeySet().iterator();
        System.out.println("=====================");
        while(itkey.hasNext()) {
            String k = itkey.next();
            String v = tMap.get(k);
            System.out.println("key" + k + "value " + v);
        }



    }
}
728x90