자바에서 배열은 기본적으로 객체로 생성된다.
type 객체이름[] = new type[생성갯수]; 혹은 type [] 객체이름 = new type[생성갯수];
의 형태로 만들어 진다.
example
int [] phoneNumber; or int phoneNumber[];
선언후에는 phoneNumber = new int[300]; 과 같은 형태로 생성을 해준다.
int [] phoneNumber = new int[300]; 처럼 한번에 처리가 가능하다.
int [] phoneNumber 에서 phoneNumber 이라는 배열변수가 메모리의 Stack 영역으로 할당되고
new int[300]; 이라는 선언에서 int형 data type 300개가 Heap 영역에 할당되어진다.
각 배열을 생성했을 때 데이터의 공간만 만들어진것이기 때문에 자바에서는 자동으로 초기화가 이루어 진다.
초기화되는 값은 타입별로 다음과 같다.
데이터 타입 |
초기값 |
byte |
0 |
short |
0 |
int |
0 |
long |
0L |
float |
0.0F |
double |
0.0 |
char |
‘\U0000’ |
boolean |
false |
reference type |
null |
* 클레스 객체를 배열로 생성했을 경우 reference tyep의 배열을 생성하기 때문에 모두 null 값으로
heap 영역의 초기값을 가진다.
* 배열복사 함수 System.arraycopy()
example
int[] array = { 1, ,2 ,3 );
int[] newArray = new int[5];
System.arraycopy(array, 0 , newArray , 0 , array.length );
이렇게 하면 array의 0번지부터 array.length 만큼의 인덱스가 newArray의 0번지 부터 복사된다.
System.arraycopy(복사될 배열이름. 복사될 배열 시작번지 , 새 배열이름 , 새 배열 시작번지 . 복사할 인덱스 수)
'Programming > JAVA' 카테고리의 다른 글
JAVA 다형성에 관해.. (0) | 2010.02.18 |
---|---|
JAVA 잡다한 정리. (0) | 2010.02.18 |
SPRING framework 에 대하여 .. (0) | 2010.02.11 |
JAVA 문법 Part 1 (0) | 2010.02.03 |
JAVA 용어 정리 (0) | 2010.02.01 |