Post

Collection과 ArrayList의 이해

시작

첫 게시글을 작성하며 어떤 내용으로 시작하면 좋을까 고민을 하다, 실무에서 자주 다루지만 어떻게 활용할지 고민이 많은 Array(배열)에 대해 개념과 핵심을 정리해 보고자 한다


✅ 자바의 컬랙션(Collection)

자바의 컬렉션은 객체를 효율적으로 저장할 수 있는 자료구조와 알고리즘의 모음이다. 다양한 데이터 유형을 효과적으로 처리하기 위한 여러 인터페이스와 클래스가 있다.

  • List
    • 순서가 쥬지되고, 중복된 요소 저장 가능
    • 구현 클래스 : ArrayList, LinkedList
  • Set
    • 중복이 불가능하고, 순서가 유지되지 않음
    • 구현 클래스 : HashSet, TreeSet
  • Map
    • 키(Key)와 값(Value)의 쌍으로 데이터를 저장 (중복 키 불가능)
    • 구현 클래스 : HashMap, TreeMap

이번 글에서는 ArrayList를 중점적으로 작성 할 것이다.


🔍ArrayList

ArrayList는 자바에서 주요 사용되는 List구현체 중 하나로, 내부적으로 배열을 사용하여 데이터를 저장한다. 데이터를 순차적으로 저장하고 인덱스로 접근할 수 있어 사용하기 간편하지만, 크기를 자동으로 조절해주는 점이 배열과의 가장 큰 차이점이다.

정리

  • 요소의 순서 유지
  • 중복 혀용
  • 동적으로 크기 조절
  • 배열보다 상입/삭제는 트릴 수 있음
1
2
3
4
5
6
7
8
9
10
11
12
import java.util.ArrayList;

public class Example {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("Apple");
        list.add("Banana");
        list.add("Cherry");

        System.out.println(list.get(1)); // 출력: Banana
    }
}

🧠 실무 팁: ArrayList vs Array


구분ArrayArrayList
크기고정가변 (자동 확장)
타입 제한기본형 및 참조형 모두 가능객체형만 가능 (기본형은 Wrapper 사용)
메서드 제공거의 없음다양한 유틸리티 메서드 제공
성능더 빠름 (단순 구조)관리 편리 (다소 느릴 수 있음)

마무리

이번 글에선 자바 컬랙션 프레임워크 중 ArryList와 배열의 차이점을 알아봤다. 앞으로 추가적으로 List 인터페이스에서 제공하는 메서드 활용 패턴등에 관하여 작성할 예정이다.

This post is licensed under CC BY 4.0 by the author.