JAVA의 Collection

 

 

컬렉션(Collection)

Java에서 컬렉션은 객체 그룹을 저장, 조작 및 관리하기 위한 인터페이스(추상 데이터 유형)와 클래스를 제공하는 프레임워크입니다. 컬렉션은 배열을 사용하는 것에 비해 요소 그룹을 작업하는 데 더 유연하고 효율적인 방법을 제공하므로 Java 프로그래밍 언어의 필수적인 부분입니다. JCF(Java Collections Framework)는 다양한 컬렉션 구현을 제공하는 인터페이스 및 클래스 세트입니다.

Java 컬렉션 프레임워크에는 다양한 유형의 컬렉션을 위한 구성 요소 역할을 하는 여러 핵심 인터페이스와 클래스가 포함되어 있습니다.

 

 

컬렉션

컬렉션 계층 구조의 루트 인터페이스입니다. add, remove, size, isEmpty 등과 같이 모든 컬렉션에 있어야 하는 기본 메서드를 정의합니다.

 

List

요소의 순서가 지정된 순서를 유지하는 컬렉션입니다. 목록은 중복 요소를 허용하며 요소는 인덱스를 통해 액세스할 수 있습니다. 일반적인 구현에는 ‘ArrayList’ 및 ‘LinkedList’가 포함됩니다.

 

Set

중복된 요소를 허용하지 않는 컬렉션입니다. 집합은 종종 수학적 집합을 나타내는 데 사용됩니다. 일반적인 구현에는 HashSet 및 TreeSet이 포함됩니다.

 

Map

키를 값에 매핑하는 컬렉션입니다. 맵의 각 키는 고유해야 하며 단일 값과 연결됩니다. 일반적인 구현에는 HashMap 및 TreeMap이 포함됩니다.

 

Queue

처리 전에 요소를 보관하기 위해 설계된 컬렉션입니다. 대기열은 FIFO(선입선출) 순서를 따릅니다. 일반적인 구현에는 LinkedList 및 다양한 우선순위 대기열 구현이 포함됩니다.

 

Deque

“이중 종료 대기열”을 나타냅니다. 양쪽 끝에서 요소를 추가하고 제거할 수 있습니다. 일반적인 구현에는 ArrayDeque가 포함됩니다.

 

이러한 각 인터페이스에는 다양한 특성과 성능 균형을 갖춘 여러 구현이 있으므로 개발자는 특정 요구 사항에 따라 적절한 컬렉션 유형을 선택할 수 있습니다.

 

Java 컬렉션 프레임워크는 컬렉션을 조작하고 작업하기 위한 다양한 정적 메서드를 제공하는 ‘컬렉션’과 같은 유틸리티 클래스도 제공합니다. 예를 들어 sort, reverse, shuffle 등과 같은 방법을 사용할 수 있습니다.

다음은 Java에서 컬렉션을 사용하는 방법에 대한 기본 예입니다.

import java.util.*;

public class CollectionsExample {
    public static void main(String[] args) {
        // Create an ArrayList to store strings
        List<String> myList = new ArrayList<>();

        // Add elements to the list
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");

        // Iterate through the list and print elements
        for (String fruit : myList) {
            System.out.println(fruit);
        }
    }
}

 

 

 

Java 컬렉션 프레임워크는 Java 1.2에 도입되었으며 시간이 지남에 따라 발전해 왔습니다. 최신 버전의 Java에서는 컬렉션 프레임워크에 추가적인 개선 사항과 기능이 도입될 수 있습니다.