배열
- 생성만 할 때: new 데이터타입[크기]
- 생성 시 기본값으로 구성(int = 0, boolean = false, …)
- ex) new int[10], new boolean[24]
- 생성과 초기화를 동시에 할 때: new 데이터타입[ ] {요소1, 요소2, …}
- {요소1, 요소2, …}만 대입하는 것도 가능!
- 변수 선언: 데이터타입[ ] 변수명, 데이터타입 변수명[ ]
- 배열 변수는 데이터타입과 상관없이 4byte
생성 과정

- 배열 객체 생성
- 배열 변수 선언 후 객체 대입
- 배열 요소에 기본값 주입 ( 요소 선언하지 않았을 때)
for each문
→ 배열, 컬렉션 구조일 때 사용
- 읽기 전용(값에 의한 호출이기 때문에 값의 수정은 불가함)
2차원 배열
- 선언 방법
- 타입[ ][ ] 변수 이름;
- 타입 변수 이름[ ][ ];
- 타입[ ] 변수 이름[ ];
- 생성 방법
- 바로 생성과 초기화: {{}, {}, …};
- 생성만: new 타입[행][열];
- 구조
- 2차원 배열 안에 행 배열 → 안에 열 배열
- ex) int[][] score = new int[5][3];1차원 배열 변수인 행 배열 변수 score[0]는 열 배열 참조score[0].length = 3
- score.length = 5
- 2차원 배열 변수 score는 행 배열을 참조

가변 배열
: 다차원 배열에서 행 배열마다 열 배열의 크기 다르게 할 수 있음
ex)
int[][] score = new int[5][ ];
score[0] = new int[4];
score[1] = new int[3];
.
.
와 같이 열의 크기를 비워두고, 생성한 후 행 배열 변수에 열 배열을 생성 후 대입
효과: 메모리 절약
'Java' 카테고리의 다른 글
| [JDBC] JDBC의 배경 / JDBC 인터페이스와 메서드 / 동작원리 (0) | 2026.04.06 |
|---|---|
| [Java] JVM 메모리 구조로 보는 자바의 본질 / 객체지향의 특성별 예시 (0) | 2026.04.06 |
| [Java] println(char[ ] 배열명)에서 주소 값이 아닌 텍스트가 나오는 이유 (0) | 2026.03.19 |
| [Java] 자바의 원칙 vs 편의성: 철학을 깬 복합 대입 연산자, char 배열 출력과 철학을 지킨 for-each문 (0) | 2026.03.19 |
| [Java] while문 / 분기 처리-break, continue (0) | 2026.03.18 |