JAVA - 배열

석재호·2022년 1월 22일
0

JAVA

목록 보기
3/12
post-thumbnail

배열

동일한 타입의 변수를 여러개 사용

  • 변수의 증가
  • 코드의 길이 증가
  • 반복문 적용 불가
  • 변수의 수를 동적으로 사용 불가

그래서 나온 것이 배열

  • 동일한 타입의 데이터 0개 이상을 하나의 연속된 메모리 공간에서 관리
  • 요소에 접근하는 속도가 빠름
  • 한번 생성하면 크기 변경 불가
  • 개별 요소는 다른 값으로 변경은 가능하나, 삭제할 수는 없음

배열의 생성

타입[] 변수명 or 타입 변수명[]
: 배열의 생성시 각 배열의 값은 기본값을 가지게 된다

자료형기본값비고
booleanfalse
char'\u0000'공백문자
byte, short, int0
long0L
float0.0f
double0.0
참조형 변수null아무것도 참조하지 않음

: 또한 배열이 가지는 값은 해당 배열의 주소값이다.

int[] i = new int[4];
int i[] = new int[4];
// 배열의 index 시작은 0부터
i[0] = 1;
i[1] = 2;
i[2] = 3;
i[3] = 4;

int[][] i = new int[4];
int i[][] = new int[4];
int[] i[] = new int[4];

int i[] = {1, 2, 3, 4};
int i[] = new int[]{1, 2, 3, 4};

// 선언 후 생성 시 초기화 주의
int[] i;
i = {1, 2, 3, 4}; //컴파일 에러
int[] i;
i = new int[]{1, 2, 3, 4};

배열의 index를 활용한 출력

int[] i = {1, 2, 3, 4, 5};

// 일반적인 반복문
for(int j=0 ; j<i.length ; j++){
	System.out.println(i[j]);
}
// for-each
for(int j : i){
	System.out.println(j);
}
// 둘 모두 실행결과는 같다
// 1
// 2
// 3
// 4
// 5

배열의 복사

int[] i1 = {1, 2, 3, 4, 5};
int[] i2 = new int[5];

//System.arraycopy(복사하는 배열, 복사하는 배열의 시작 주소, 복사되는 배열, 복사되는 배열의 시작주소, 복사될 길이)
System.arraycopy(i1, 0, i2, 0, i1.length);

for(int j : i2){
	System.out.print(j+" ");
}
// 실행결과
// 1 2 3 4 5
profile
개발자 준비 중

0개의 댓글