728x90
728x90
배열 (Array)
- 연관된 데이터들을 하나의 변수에 모아서 통으로 관리하기 위해 사용하는 리스트 자료 구조
- 여러 개의 데이터를 하나의 변수에 저장하기 위한 것
1 2 3 4 5 6 7 8 9 10 11 12 | // 배열 선언 (메모리 영역에 공간만 할당함, 값 X) 값자료형[] 배열명 = new 값자료형[배열크기]; // ex) int[] arr = new int[3]; 값자료형 배열명[] = new 값자료형[배열크기]; // 배열 값 초기화 (인덱스 연산 값 할당) 배열명[인덱스] = 값; // 배열 선언과 초기화 값자료형[] 배열명 = {요소1, 요소2, 요소3, ...}; // 배열 값 확인 System.out.println(배열명[인덱스]); | cs |
- '배열'의 자료형과 '배열 값'의 자료형은 다름 ex) (배열 값 자료형 int) != (배열 자료형 int[])
→ 변수 자료형이나 반환 자료형 등을 입력할 때는 '배열'의 자료형을 입력해야 함
- 배열 선언 시, 자동으로 자료형의 기본값에 따라 초기화됨
→ int : 0 // double : 0.0 // boolean : false // 참조자료형(String 등) : null
- 기본 자료형 배열은 선언과 동시에 배열 크기 만큼의 메모리가 할당됨
- 객체 배열의 메모리 공간에는 heap 메모리에 대한 주소 값이 할당됨
// for 문을 활용한 객체 배열 생성 형식
for (int i = 0; i < 개수; i++) {
배열명[i] = new 클래스명(매개변수);
}
# 인덱스
- [] : 인덱스 연산자
- 배열 크기가 n일 때, 인덱스는 0부터 (n-1)까지 생성됨
# 배열의 길이 반환
- 배열명.length
- 배열의 길이와 실제 요소의 개수는 다를 수 있음
→ 값이 부여되지 않은 인덱스의 값에 접근하려고 하면 NullPointerException 에러 발생
이중 배열
1 2 3 4 5 6 7 8 9 | // 선언과 동시에 초기화 String[][] 배열명 = { {값1, 값2, ...}, {값1, 값2, ...}, ... }; // 배열 요소에 접근 배열명[i][j] | cs |
기타 메모
- 배열 사용 시 런타임 에러가 잦으므로, null 값을 배제하는 방어적 코드 활용하기
320x100
반응형
'Java > Base' 카테고리의 다른 글
[Java] 상속 관계의 다형성과 참조형 형 변환 (0) | 2023.02.09 |
---|---|
[Java] 상속 관계와 메서드 오버라이드 (0) | 2023.02.09 |
[Java] static 키워드 (0) | 2023.02.09 |
[Java] this 키워드와 super 키워드 (0) | 2023.02.08 |
[Java] 배열 - 도서 정보 등록·조회·삭제 프로그램 구현 (0) | 2023.02.08 |