배열 ( Array )
- 동일한 타입의 데이터를 연속된 공간에 저장하기 위한 자료구조, 즉 데이터를 그룹화 하는 것.1. String[] array = new String[5]; // 선언과 동시에 배열 생성 → 타입[] 배열명 = new 타입[배열의 크기]; 2-1. String[] array; // 선언 : 타입[] 배열명; 2-2. array = new String[5]; // 생성 : 배열명 = new 타입[배열의 크기]; // 선언과 배열의 생성을 분리
- 생성 시에 정해진 배열의 크기는 바꿀 수 없음.
- 배열은 인덱스(순차적으로 배정되는 번호)와 데이터(실제 값)로 이루어짐.
- 인덱스는 0부터 시작. ※ 따라서, 마지막 인덱스 번호와 배열의 크기가 항상 다름. 실수 주의!
- 선언만 한 배열은 타입에 따라 다음과 값은 값을 가짐.
※ 숫자형 = 0; / 불리안 = false; / 그 외 = null;
- 배열의 크기에 벗어나는 인덱스를 호출하면 ArrayIndexOutOfBoundsException 에러가 발생
이차원 배열
- 위와 같은 형식으로 이차원 배열을 만드는 것도 가능함자료형[][] 배열이름 = new 자료형[행개수][열개수]; int[][] array1 = new int[2][3]; int[][] array2 = new int[2][]; // 열 개수는 생략하여 가변적으로 사용 가능 int[][] array1 = { {10, 20, 30}, {40, 50, 60} }; int[][] array2 = { {10, 20,}, {30, 40, 50} };
- 열 개수는 생략하여 가변적으로 사용 가능 함
컬렉션이란?
배열의 문제점( ex : 크기 고정/빈 인덱스의 메모리 낭비 등 )을 보완하여, 다수의 데이터들을 관리하고 처리할 수 있도록 만들어진 자료 구조
컬렉션의 종류
List | 순서가 있는 자료 구조 |
Set | 순서가 없는 자료 구조 |
Map | 키와 값으로 이루어진 자료 구조 |
Queue | 먼저 들어간 데이터가 먼저 나오는 FIFO 형식을 가진 자료 구조 |