본문 바로가기
프로그래밍 언어/JAVA

JAVA - 배열(Array) 와 컬렉션 (Collection)의 차이점

by DGDD(Developer) 2024. 6. 21.

배열 (Array)

  • 고정된 크기 : 배열은 생성 시 크기가 고정되며, 이후에는 크기를 변경할 수 없다.
  • 동일한 타입 : 배열은 동일한 타입의 요소만 저장할 수 있다.
  • 인덱스 접근 : 배열 요소는 인덱스를 통해 직접 접근할 수 있다.
  • 저수준 데이터 구조 : 배열은 컬렉션보다 더 저수준의 데이터 구조로, 메모리 효율성과 빠른 접근 속도를 제공한다.
int[] numbers = new int[5];
numbers[0] = 10;
numbers[1] = 20;

String[] fruits = {"apple", "banana", "cherry"};
System.out.println(fruits[1]); // 출력: banana

 

컬렉션(Collection)

  • 가변 크기 : 컬렉션은 동적으로 크기를 조절할 수 있다.
  • 다양한 데이터 구조 : 리스트, 셋, 맵, 큐 등 다양한 데이터 구조를 제공한다.
  • 다양한 타입 : 컬렉션은 제네릭스를 사용하여 다양한 타입의 요소를 저장할 수 있다.
  • 편리한 메서드 : 요소 추가, 삭제, 검색 등 다양한 편리한 메서드를 제공한다.
  • 고수준 데이터 구조 : 컬렉션은 더 높은 수준의 추상화와 다양한 기능을 제공한다.
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("cherry");

for (String fruit : list) {
    System.out.println(fruit);
}

배열과 컬렉션 비교

특성 배열(Array) 컬렉션(Collection)
크기 고정 가변
요소 타입 동일한 타입 다양한 타입(제네릭스 지원)
데이터 구조 단순한 저수준 구조 고수준 데이터 구조(리스트, 셋, 맵 등)
접근 방법 인덱스를 통한 직접 접근 메서드를 통한 접근(add, remove, get 등)
성능 메모리 효율, 빠른 접근 편리함과 기능성 제공

 

  • 배열은 자바의 기본적인 데이터 구조로 고정된 크기를 가지며 동일한 타입의 요소만을 저장한다.
  • 컬렉션은 자바의 컬렉션 프레임워크에 속하는 다양한 데이터 구조로, 가변 크기와 다양한 타입의 요소를 저장하며 편리한 메서드를 제공한다.

'프로그래밍 언어 > JAVA' 카테고리의 다른 글

JAVA - 컬렉션 List  (0) 2024.06.21
JAVA - 컬렉션 종류  (0) 2024.06.21
JAVA - I/O 와 NIO 차이  (0) 2024.06.21
JAVA - 배열 복사하기  (2) 2024.03.15
Java - 문자열(String) 과 정수(int) 변환  (0) 2024.03.13