배열은 값을 하나하나 지정해주는게 아니라 하나의 카테고리 안에 넣어서 보관한다고 생각하면 편합니다.
예를 들어서 학생ID를 하나하나 인스턴스로 지정하는게 아니라 studentID라는 배열로 묶어서 보관한다고 할 수 있습니다.
배열은 기본적으로 다음과 같이 표현됩니다.
자료형[] 배열이름 = new 자료형[개수]
자료형 배열이름[] = new 자료형[개수]배열을 선언하면 그와 동시에 각 요소의 값이 초기화됩니다.
int[] studentIDs = new int[] {101,102,103}
int[] studentIDs = {101,102,103}
아래와 같이 new int[]를 생략하여 표현 할 수도 있습니다. 하지만 요소의 값은 자동으로 초기화 되므로 []안에 개수를 넣게되면 오류가 발생하게 됩니다.
인덱스 연산자는 배열 요소가 저장된 메모리 위치를 찾아주는 역할입니다. [i]는 i번째 메모리를 의미합니다. 또한 배열의 위치는 0번째부터 시작됩니다.
만약 값이 대입된 만큼만 출력하고 싶은 배열이 있다면 다음과 같은 방식으로 출력시킬 수 있습니다.
package array;
public class ArrayTest3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
double[] data = new double[5];
int size=0;
data[0]=10.0; size++;
data[1]=20.0; size++;
data[2]=30.0; size++;
for(int i =0;i<size;i++) {
System.out.println(data[i]);
}
}
}
그러면 이제 배열을 이용하여 알파벳을 순차적으로 저장하는 코드를 예시로 짜보겠습니다.
package array;
public class CharArray {
public static void main(String[] args) {
// TODO Auto-generated method stub
char[] alphabets = new char[26];
char ch = 'A';
for(int i=0;i<alphabets.length;i++,ch++) {
alphabets[i]=ch;
}
for(int i=0;i<alphabets.length;i++) {
System.out.println(alphabets[i]+","+(int)alphabets[i]);
}
}
}
이상으로 배열에 대한 포스터를 마치겠습니다.