컴퓨터 & 코딩/Java

[혼공학습단 10기][혼공자] 5주차 미션

구로그 2023. 7. 23. 18:08
728x90

✏️ 진도: Chapter 13 (컬렉션 프레임워크)

1. 컬렉션 프레임워크


 

📖 기본 미션: 직접 정리한 키워드 공유하기

 

  • 컬렉션 프레임워크: 자료 구조를 사용하여 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 하는 인터페이스와 구현 클래스를 제공하는 라이브러리 (java.util 패키지)
    • 컬렉션: 객체의 저장과 관리
    • 프레임워크: 사용 방법을 정해놓은 라이브러리

 

 

  • List 컬렉션:
    • 객체를 인덱스로 관리하는 컬렉션
    • 저장 용량이 자동으로 증가하고, 자동 인덱스가 부여됨
    • 객체 자체가 아닌 객체의 번지를 참조함
    • 동일한 객체를 중복 저장 가능하고, null도 저장 가능함
    • List 구현 클래스:
      • ArrayList: 내부 배열에 객체를 저장하는 구조, 특정 인덱스의 객체를 추가/삭제할 때 성능이 좋음
      • Vector: ArrayList와 동일한 내부 구조이며, 동기화된 메소드로 구성되어 멀티 스레드 환경에서 안전함
      • LinkedList: 인접 참조를 링크하여 관리하는 구조, 중간에 추가/삭제할 때 성능이 좋음

 

 

  • Set 컬렉션:
    • 저장 순서를 유지하지 않는 컬렉션
    • 객체를 중복해서 저장할 수 없음
    • 하나의 null만 저장 가능함
    • Set 구현 클래스:
      • HashSet: 순서 없이 객체를 저장하고, 동일한 객체는 중복 저장하지 않음
      • TreeSet: 정렬된 순서로 객체를 저장함

 

 

  • Map 컬렉션:
    • 키와 값으로 구성된 객체를 저장하는 컬렉션
    • 키는 중복 저장되지 않으나 값은 중복 저장 가능함
    • Map 구현 클래스:
      • HashMap: 해시맵의 키로 사용할 객체는 hashCode()와 equals() 메소드를 재정의하여 동등 객체를 판단함
      • Hashtable: HashMap과 동일한 내부 구조이며, 동기화된 메소드로 구성되어 멀티 스레드 환경에서 안전함
      • TreeMap, Properties 

 

 

  • LIFO와 FIFO 컬렉션:
    • LIFO(Stack): 마지막에 저장된 객체가 먼저 꺼내짐 (Last-In-First-Out)
    • FIFO(Queue): 처음에 저장된 객체가 먼저 꺼내짐 (First-In-First-Out)

 

 

 

 

📚 선택 미션: p. 573 [직접 해보는 손코딩] 코딩 과정 및 실행 결과 캡처하기

 

❗️코딩 과정

 

✅ 실행결과

 

반응형