본문 바로가기
코드프레소 체험단/Java 프로그래밍

[Java 프로그래밍 초급] 컬렉션 프레임워크의 개념

by 의정부핵꿀밤 2022. 1. 20.
728x90

✨ 이 글은 [ 코드프레소 Java 웹 개발 체험단 활동 ] 내용입니다 ✨

💜 코드프레소 이러닝 강의 수강 중 - Java 프로그래밍 초급 💜

😎 아래의 링크를 통해 프리미엄 IT 교육 서비스, 코드프레소를 확인해보세요 😎

https://www.codepresso.kr/

 

프리미엄 IT 교육 서비스 - 코드프레소

 

www.codepresso.kr


컬렉션 프레임워크(collection framework)란?

  • 여러 건의 데이터를 다루기 위해서는 Array와 같은 데이터를 다루기 위한 자료구조의 구현체가 필요하다
  • 다양한 특성을 가진 데이터를 다루기 위해서는 그에 적합한 자료구조가 필요하다
  • 다양한 자료구조의 구현을 위한 클래스와 인터페이스의 집합이다

 

 

컬렉션 프레임워크의 필요성

  • 다양한 데이터를 위한 자료구조의 구현체 필요
  • 예시
    • 매분마다 수집된 하루 치 주식 가격 데이터
    • 전 세계 모든 국가들의 이름을 GDP 순으로 저장
    • 한 사람의 정보를 저장
  • 자바에서는 다양한 자료구조의 구현체를 클래스 라이브러리 형태로 제공한다
  • 자료구조에 저장된 데이터를 다루기 위한 알고리즘 구현체 필요 -> 데이터 조회, 삭제, 추가 등..
  • 제공되는 클래스에서 데이터를 가공하기 위한 메소드를 제공한다!

 

 

 

 

컬렉션 프레임워크 클래스와 Array

  • 컬렉션 프레임워크는 Array와 비슷하지만 다른 점이 존재한다
  • Java에서 Array는 여러 개의 데이터를 한 번에 저장할 수 있는 가장 기본적인 자료구조이다
  • 컬렉션 프레임워크는 Array에서 지원하지 않는 기능을 제공한다
  • 데이터 개수의 동적인 변경 가능
    • Array는 초기에 설정한 데이터 크기를 추후에 변경이 불가능하다
    • 컬렉션 프레임워크는 추후에 동적인 변경이 가능하다
  • 객체만을 원소로 갖는다
    • Array의 원소는 Object, Primitive Type(int, float, string) 등을 원소로 가질 수 있다
    • 컬렉션 프레임워크는 오직 객체만을 원소로 갖는다

 

 

 

컬렉션 프레임워크의 주요 인터페이스

  • 컬렉션 프레임워크에는 아래의 주요 인터페이스를 통해 정의한다
  • List와 Set 인터페이스는 모두 Collection 인터페이스를 상속받아 정의한다
  • Map 인터페이스는 구조상 차이로 Collection 인터페이스를 상속받지 않는다

 

 

 

컬렉션 프레임워크 인터페이스들의 상속 관계

List와 Set 자료구조

 

Map 자료구조

 

 

 

주요 인터페이스들의 특징

1. java.util.List<E> 인터페이스

 

2. java.util.Set <E> 인터페이스

 

3. java.util.Map <K,V>

728x90

댓글