[혼공자] - Chapter 13

SGIYLEVOELR·2022년 2월 20일
0

혼공자

목록 보기
5/6

테스트 끝났는데... 평일에 혼공단을 할 수 없는 이유가 머지.... ㅇㅅㅇ
여전히 바쁘네.. 이상하다 후엥

원격 고장나서 혼공단 못할 뻔.... ㅇ_ㅇ

컬렉션 프레임워크

  • Collection Framework
  • 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합
  • 자료 구조 & 알고리즘을 구조화하여 클래스로 구현한 것
  • Interface를 사용하여 구현 가능
  • 주요 Interface
    - List, Set, Map Interface
  • 참조 :: TCP SCHOOL
    http://www.tcpschool.com/java/java_collectionFramework_concept

List Interface

  • Collection Interface 상속
  • 순서가 있는 데이터의 집합
  • 데이터의 중복이 허용됨
  • Ex) Vector, ArrayList, LinkedList, Stack, Queue

Set Interface

  • Collection Interface 상속
  • 순서가 없는 데이터의 집합
  • 데이터의 중복이 허용되지 않음
  • Ex) HashSet, TreeSet

Map Interface

  • 키와 값의 한 쌍으로 이루어지는 데이터의 집합
  • 순서가 존재하지 않음
  • key : 중복 허용 X
  • value : 중복 가능
  • Ex) HashMap, TreeMap, Hashtable, Properties

컬렉션 클래스

  • 컬렉션 프레임워크에 속하는 Interface를 구현한 클래스

p.573

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class HashMapExample {
    public static void main(String[] args) {
        // Map 컬렉션 생성
        Map<String, Integer> map = new HashMap<String, Integer>();

        // 객체 저장
        // key값이 1번과 4번이 동일하기 때문에 value는 4번의 value가 들어가게 된다.
        /** 1번 */ map.put("가", 85);
        /** 2번 */ map.put("나", 90);
        /** 3번 */ map.put("다", 80);
        /** 4번 */ map.put("가", 95);

        // map에 저장된 총 Entry 수 얻기
        System.out.println("총 Entry 수 : " + map.size());

        // 객체 찾기
        // key로 value 찾기
        System.out.println("\t가 : " + map.get("가"));
        System.out.println();

        // 객체를 하나씩 처리하기
        // Key Set 얻기
        Set<String> keySet = map.keySet();
        Iterator<String> keyIterator = keySet.iterator();
        while (keyIterator.hasNext()) {
            String key = keyIterator.next();
            Integer value = map.get(key);
            System.out.println("\t" + key + " : " + value);
        }
        System.out.println();

        // 객체 삭제
        // map의 Entry 제거하기 :: key 이용
        map.remove("가");
        // 객체 삭제 후 map 확인하기
        System.out.println("총 Entry 수 : " + map.toString());
        // 객체 삭제 후 map의 size 확인하기
        System.out.println("총 Entry 수 : " + map.size());

        // 객체를 하나씩 처리
        Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
        Iterator<Map.Entry<String, Integer>> entryIterator = entrySet.iterator();

        // 반복해서 Map.Entry 얻고 키와 값을 얻어냄
        while (entryIterator.hasNext()) {
            Map.Entry<String, Integer> entry = entryIterator.next();
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println("\t" + key + " : " + value);
        }
        System.out.println();

        // 객체 전체 삭제
        // 모든 Map의 Entry 삭제하기
        map.clear();
        System.out.println("총 Entry 수 : " + map.size());
    }
}

결과

0개의 댓글