요소
배열이 가진 각 값인덱스
0에서부터 배열의 각 요소가 부여받는 순서
- 1차원 배열
int[] arr; //배열의 선언 ( 배열을 가리킬 참조 변수 arr 선언) arr = new int[31]; //배열의 생성 ( 배열 첫 번째 요소의 주소값이 참조변수 arr에 할당)
선언과 초기화를 하나의 문장으로 할 때 new int[] 생략 가능
int[] arr = {1, 2, 3, 4, 5};
- 값 접근하기
배열 참조 변수의 이름과 배열의 인덱스로 접근int[] arr = {1, 2, 3, 4, 5}; arr[0] = 1; arr[1] = 2;
- 배열의 길이
배열 참조변수이름.lengthint[] arr = new int[5]; System.out.println(arr.length); // 5
배열의 길이 - 1 = 배열 마지막 요소의 인덱스
- 배열의 요소 확인
Arrays.toString()
메서드
- 2차원 배열
1차원 배열의 나열int[][] kcal; kcal = new int[31][3]; //하루 3끼 한달동안의 칼로리 데이터
int[][] kcal = new int[31][3];
내부 배열은 int형의 기본값인 0을 3개씩 저장,
외부 배열은 내부배열({0,0,0}) 31개 저장값을 넣어 초기화를 하는 경우
int[][] kcal = { { 1000, 1200, 1500 }, { 1100, 1300, 1400 }, { 1200, 1600, 1700 }, ... { 1500, 1300, 1200 } }
- 가변 배열
배열이 2차원 이상일 때 마지막 차수에 해당하는 배열의 길이를 고정하지 않음.int[][] ages = new int[5][]; //외부 배열만 생성된 상태
new int[] 를 사용하여 외부 배열의 각 요소에 할당
int[][] ages = new int[5][]; ages[0] = new int[5]; ages[1] = new int[6]; ... //결과 //Arrays.toString(ages[0]) = [0, 0, 0, 0, 0] //Arrays.toString(ages[1]) = [0, 0, 0, 0, 0, 0] int[][] ages = { { 30, 32, 39, 59, 23 }, { 31, 41, 52, 56, 72, 13 } ... //생성과 동시에 초기화 가능
int[] scores = { 100, 100, 100, 100, 100 }; int sum = 0; for (int i = 0; i < scores.length; i++) { sum += scores[i]; } System.out.println(sum); // 500
nt[] scores = { 100, 100, 100, 100, 100 }; int sum = 0; int i = 0; while (i < scores.length) { sum += scores[i++]; } System.out.println(sum); // 500
결과
오늘은 3일간의 java기초가 끝나고 3일간 같이 하던 페어도 끝이었다.
이번주는 너무 뭔가 학습분량도 그렇고 할게 너무 많은 느낌이다.
어제 과제에 대해서 미리 알아보지 않았다면 오늘 더 버거웠을것 같았다,,
딥토크도 진행했는데 생각보다 좋은 시간이었던 것 같다. 다들 공부를 다 하고 오신 분들이어서 내가 따라가려면 더 노력해야된다는 걸 다시 한번 생각하게 되었다! 3일간 열심히 같이 문제 풀어주신 페어분께 너무 감사드린다.