티스토리 뷰

  • Java.util.Map?

Object > Dictionary > Hashtable

- 데이터 추가

데이터 입력

- 데이터 읽기

데이터 읽기

- get , put , putAll , getOrDefault 등을 가장 많이 사용한다.


  • HashMap // HashTable 의 차이?
    • HashMap > not Synchronized // 멀티스레드X
    • HashTable >  Synchronized 되어 있습니다. // 멀티스레드 O
package programmers.lv2;

import java.util.*;
import java.util.concurrent.ConcurrentHashMap;


/**
 * packageName    : programmers.lv2
 * fileName       : Target_number
 * author         : ipeac
 * date           : 2022-05-31
 * description    :
 * ===========================================================
 * DATE              AUTHOR             NOTE
 * -----------------------------------------------------------
 * 2022-05-31        ipeac       최초 생성
 */

//Array 장점 + List 장점 -> 유연하면서 빠르게 값을 찾아낼 수 있는
// Map : key > hash function => hash => bucket index => Data
//
// HashMap   ; not synch
// HashTable : synch
// ConcurrentHashMap : synch + high concurrency

public class Target_number {
      
      public static void main(String[] args) {
            Map<String, Integer> map = new HashMap<>();
            map.put("A", 1);
            map.put("B", 2);
            
            //ConcurrentHashMap  > synch + high concurrency 가 필요한 경우 !
            Map<String, Integer> concurrentHashMap = new ConcurrentHashMap<>();
            
            map.replace("A", 1, 11);
            
            method1();
      }
      
      private static void method1() {
            Hashtable<String, Integer> map = new Hashtable<>();
            map.put("A", 1);
            map.put("B", 2);
            
            //A 키의 값이  10인 경우에 11로 바꾸세요!
            map.replace("A", 10, 11);
            
            //B라는 키에 2라는 값이 존재하는 경우 true 아니라면 false 를 반환합니다.
            System.out.println(map.remove("B", 3));
            
            //B라는 키를 삭제합니다 > 리턴값은 해당 B 키값 안의 밸류값을 리턴합니다.
            System.out.println(map.remove("B"));
            
            //A 에 값이 존재하지않는다면 해당 값을 넣어줘라!
            map.putIfAbsent("A", 10);
            System.out.println("map = " + map);
            System.out.println(map.get("A"));
            
            //"C"에 해당하는 키값을 가진 친구가 있냐 ? 없으면 null 말고 기본값을 반환하쇼!
            System.out.println(map.getOrDefault("C", 0));
            
            //Map 안의 밸류 / 키 값을 모조리 들고옵니다.
            System.out.println(map.values());
            System.out.println(map.keySet());
      }
      
      static class Solution {
            
            public List<Integer> solution(long n) {
                  System.out.println("n = " + n);
                  
                  String result = String.valueOf(n);
                  String[] result_arr = result.split("");
                  
                  List<String> result_list;
                  result_list = Arrays.asList(result_arr);
                  System.out.println("result_list = " + result_list);
                  Collections.reverse(result_list);
                  
                  List<Integer> result_int_list = new ArrayList<>();
                  for (String value : result_list) {
                        result_int_list.add(Integer.valueOf(value));
                  }
                  
                  return result_int_list;
            }
            
      }
      
}

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함