배열이란??

동일한 자료형의 묶음이다.

Heap 메모리에 new 연산자를 이용하여 할당한다.

배열의 인덱스는 0번부터 시작한다 ( 중요 )

자료형 별 배열 선언 형식

// 자료형에 []를 붙이던  변수명에 []를 붙이던 상관없다.
int[] intArr;  // 저는 이 형식을 더 선호합니다
int intArr[];

// 선언과 동시에 초기화를 할 수 있다.
int[] intArr = new int[5]; // 크기만 지정 할 경우 초기값으로 5칸이 채워진다.
int intArr[] = new int[5]; // 정수형의 초기값 : 0

// 선언만 하고 나중에 초기화를 할 수도 있다.
int[] intArr;
intArr = new int[5];

// 크기를 지정하지 않고 초기화도 가능하다. 중괄호를 사용한다.
int[] intArr = {11, 22, 33, 44, 55 }; 
int[] intArr = new int[] {11, 22, 33, 44, 55 };

				/* 값의 형태 별 기본값
	       * int        정수 : 0
	       * double     실수 : 0.0
	       * boolean    논리 : false
	       * char       문자 : \\u0000
	       * String     참조 : null
	       * */

// 문자열(String) 을 charAt() 함수를 사용하여 한 글자씩 잘라서 char 배열에 저장할 수 있다.
// char[i] chArr = sc.nextLine().charAt(i)     // i 는 반복문 인덱스 

// 배열을 초기화하거나 출력하는 등의 작업에는 반복문 사용이 필수적이다.

// 배열명.length = 배열의 길이 값 리턴.

2차원 배열

// 1차원 배열이 이렇게 생겼다면,
int[] intArr = new int[5]
[  ][  ][  ][  ][  ]
// 2차원 배열의 형태
int[][] intArr2 = new int[2][3]   // [행][열]
[  ][  ][  ]
[  ][  ][  ]

// 각각의 위치 , 배열의 시작 인덱스는 0 번
[ int[0][0] ][ int[0][1] ][ int[0][2] ]
[ int[1][0] ][ int[1][1] ][ int[1][2] ]

for(int i = 0; i < inrArr2.length; i++){   // 조건식 i < 행의 개수
	for(int j = 0; j < inrArr2[i].length; j++) {  // 조건식 j <열의 개수
	    		System.out.print(inrArr2[i][j] + " ");    		// 해당 위치 값출력 + 공백
	}
}

//수행결과    정수형 배열의 초기값 = 0
0 0 0 
0 0 0 

 

정변배열, 가변배열의 선언, 할당

2차원배열 하나씩 접근하기

array_copy app2 얕은복사 다시보기 ㅡㅡ;;

+ Recent posts