본문 바로가기
JAVA/자바 문법 기초 익히기

배열 vs ArrayList 차이점

by DEVLIB 2025. 4. 12.
728x90

배열 vs ArrayList 차이점 요약표


 

항목 배열 (Array) ArrayList
크기 고정 크기 (초기 선언 필수) 가변 크기 (자동으로 늘어남)
선언 방식 int[] arr = new int[5]; ArrayList<Integer> list = new ArrayList<>();
자료형 기본형 사용 가능 (예: int) 참조형만 사용 가능 (Integer, String 등)
요소 추가 불가능 (직접 인덱스에 대입) add() 메서드로 간단 추가
요소 삭제 직접 새 배열 생성 필요 remove()로 간편 삭제
요소 수정 arr[i] = 값 list.set(i, 값)
길이 확인 arr.length list.size()
반복문 사용 가능 (for, for-each) 가능 (for, for-each)
속도 더 빠름 (메모리 고정) 상대적으로 느림 (동적 처리)

예제 비교

배열 사용

int[] scores = new int[3];
scores[0] = 80;
scores[1] = 90;
scores[2] = 100;

System.out.println(scores[1]);  // 90

ArrayList 사용

import java.util.ArrayList;

ArrayList<Integer> scores = new ArrayList<>();
scores.add(80);
scores.add(90);
scores.add(100);

System.out.println(scores.get(1));  // 90

언제 어떤 걸 써야 할까?


상황추천
자료구조
데이터 수가 고정되어 있는 경우 배열 (메모리 효율적)
추가/삭제가 빈번한 경우 ArrayList (편리함)
문자열, 객체 관리 ArrayList<String>, ArrayList<Student> 등
기초 알고리즘 연습용 배열 (int[], char[])

마무리 요약


비교 항목 핵심 요점
크기 배열은 고정, ArrayList는 동적
타입 배열은 기본형 가능, ArrayList는 객체형만
기능 ArrayList는 추가/삭제/삽입 등 메서드 다양
코드 간결성 ArrayList가 실무에서 더 효율적

연습 아이디어

  • 배열로 성적 저장 → 총점 계산
  • ArrayList로 이름 추가/삭제 기능 만들기
  • 배열 → ArrayList 변환해보기
LIST

'JAVA > 자바 문법 기초 익히기' 카테고리의 다른 글

ArrayList 기초 사용법  (0) 2025.04.12
1차원 배열 선언/초기화  (0) 2025.04.12
break, continue 사용법  (0) 2025.04.12
for, while, do-while 반복문  (0) 2025.04.12
switch 문 사용법  (0) 2025.04.12