Ch.05 배열(Array)
- 배열(Array)
- 배열이란
- 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것
- 배열을 다루는 변수는 값이 아닌 주소값을 저장하고 있음 (참조변수)
- 저장공간이 연속적으로 배치
- 배열의 선언과 생성
- 타입[] 변수이름; 또는 타입 변수이름[]; //배열의 선언 방법
- 변수이름 = new 타입[배열의 길이]; //배열의 생성 방법
- 배열의 길이와 인덱스
- 인덱스(index): 배열의 값을 접근할 수 있는 일련 번호
- 인덱스의 범위: 0 ~ 지정한 배열의 길이-1
- 배열의 길이는 정수(0포함)으로 생성할 수 있음
- 배열의 초기화
- 각 인덱스에 접근하여 값을 저장하는 방법
- new 타입[] { //배열로 다룰려는 값들의 모임 }
- 위의 경우 new는 생략 가능
- 배열의 복사
- 기존의 배열을 저장할 배열변수를 생성
- 기존의 배열을 새롭게 선언
- 반복문을 통해 기존의 배열 변수에 값을 저장
- for문보다 System.arraycopy(타겟배열, 복사할 시작 인덱스, 새로운 배열, 새로운 배열에서 시작 인덱스, 복사할 개수)를 이용하는 것이 성능이 빠름
- 배열의 활용
- 총합과 평균, 최대값 최소값, 섞기, 임의의 값으로 배열 채우기, 정렬하기, 빈도수 구하기, ...
- String 배열
- String 배열의 선언과 생성
- 참조형 변수의 기본값은 null
- 기본형 배열과 선언과 생성 방법은 같음
- String 배열의 초기화
- 기본형과 동일하게 초기화 방법 진행
- 데이터, 즉 문자열은 큰따옴표("")안에 입력
- String 배열은 값이 저장된 것이 아니라 문자열의 주소가 저장되어 있음
- 즉, String 배열은 String 주소의 집합임
- char배열과 String클래스
- String은 char 배열에 기능(함수)를 추가한 것
- 커맨드 라인을 통해 입력받기
- main method의 매개변수인 String[] args로 받는 것
- 다차원 배열
- 2차원 배열의 선언과 인덱스
- 타입[][] 변수이름; (또는) 타입 변수이름[][]; (또는) 타입[] 변수이름[]; //2차원 배열 선언 방법 3가지
- 배열이름 = new 타입[행 길이][열 길이]; //2차원 배열 생성 방법
- 배열이름[행 인덱스][열 인덱스] //인덱스를 이용한 데이터 접근 방법
- 2차원 배열의 초기화
- 1차원 배열과 유사
- 1차원 배열의 집합을 괄호{} 로 묶어줌
- 가변 배열
- 2차원 배열의 각 행마다 다른 길이의 배열로 다룰 수 있음
- 다차원 배열의 활용
- 좌표, 빙고, 행렬의 곱셈, 단어 맞추기, ...
'JAVA 기초' 카테고리의 다른 글
[JAVA 기초] JAVA의 정석 - Ch.07 객체지향 프로그래밍 II (정리) (1) | 2025.01.15 |
---|---|
[JAVA 기초] JAVA의 정석 - Ch.06 객체지향 프로그래밍 I (정리) (1) | 2025.01.15 |
[JAVA 기초] JAVA의 정석 - Ch.04 조건문과 반복문 (정리) (1) | 2025.01.15 |
[JAVA 기초] JAVA의 정석 - Ch.03 연산자(Operator) (정리) (0) | 2025.01.15 |
[JAVA 기초] JAVA의 정석 - Ch.02 변수(Variable) (정리) (0) | 2025.01.15 |