같은 타입의 여러 변수들을 하나의 묶음으로 처리하는 것을 말한다.
여기서 중요한 것은 같은 타입이어야 한다.
예를들어, 배열을 이용하는 이유를 알아보자.
어떠한 학교 시스템에 학생이 1000명이 등록되어 있고,
그 학교에서 중간고사를 본 후에 그 중간고사 시험 점수를
등록하는 일이 있다고 해보자.
이 같은 경우에는 변수를 하나하나 지정을 해서 score1, score2....scoreN
등으로 표현을 할 수가 있고, 이렇게 되면 1000명의 score를 하나 하나 기입해주어야한다.
코드로 풀어보자면 이렇다.
public class Score{
public static void main(String[] args){
int score1 = 100;
int score2 = 80;
int score3 = 89;
.
.
.
.
int score1000 = 78;
}
}
위와 같이 표현을 하게 된다면 변수를 지정하는 것만으로
1000개의 변수명을 지어야하고 각각의 변수들이 할당된다 생각하면
1000개의 메모리를 지정하는 것과같다.
이러한 것을 하나의 묶음으로 처리를 할 수가 있는데 그것이 배열이다.
실생활에서 생각을 해보면 이런 것과 같은 개념인 것이다.
마트에서 귤을 낱개로도 판매를 하고 5개씩 묶음으로 파는 것도 있다.
두개다 가격은 같다고 생각을 했을 때 들고가기 편한 것은 당연히
묶음으로 된 것이 편하다
public class Score{
public static void main(String[] args){
int [] score = new int[1000];
}
}
위의 하나하나 지정하던 것들을 배열로 표기를 하면 한줄로 표현 가능하다.
여기서 배열을 나타내는 기호는 [] 를 붙여 주면되고
쓰는 방법으로는 타입명 뒤에 붙여줘도 되고 변수명 뒤에 붙여줘도
상관은 없으나 통상적으로 타입뒤에 붙여주는것이 바람직하다.
자 위에 선언한 방식은 선언과 동시에 초기화 까지 한 것이고
정수형의 초기화 기본 값 (default)은 0이다.
이또한 정수형의 배열이기에 모든 1000개의 자리에 0이 초기화되어
들어간다.
[sc1,sc2,sc3.....sc1000] 편하게 말하자면 이런 식이다.
이제 생각 해야하는 것이 있다.
배열의 길이 즉 index가 []안에 표시가 되고, 예를들어
[]안에 5가 들어있다고 하면 길이는 5인 배열이 생성이 되는 것이다.
하지만 여기서 많이 오해를 하고 틀리는 점이 있는데, 인덱스의 길이는 5이지만
인덱스의 범위는 0~4이다 왜냐하면 컴퓨터는 1부터 시작을 하지않는다.
이점에 유의를 해야한다.
위의 내용을 보면 0에서부터 시작을 한다.
즉 만약에 score[3]이라고 하는 값이 있으면
이 것은 [0,1,2,3,4] 중에 2를 말하는 것이다.
즉 몇번째인지를 선택하는 것이다.