배열
- 배열 : 참조자료형/ 같은 종류의 데이터(자료형/타입)를 저장하기 위한 자료구조
- 고정된 크기 → 한번 생성된 배열은 크기를 바꾸지 못함 → 배열의 길이는 임의로 변경 불가
- 배열을 객체로 취급 = 주소를 가리키고 있음
- 배열의 요소를 참조하려면 배열이름(변수명)과 색인이라고 하는 음이 아닌 정수값을 조합 : 변수명[값(index)]
- index 번호는 0부터 시작, index 번호로 각 요소에 접근가능 : 배열은 주소값이 0에서 얼마나 떨어져 있는지 계산해서 인덱스에 바로 접근 가능!
- 배열이름.length : ‘배열이름’이 가지고 있는 길이→배열의 길이 조회가능
- 길이 변경 필요시, 새로운 배열을 생성 후 내용을 옮긴다
- 배열의 선언
- 타입[] 변수 (이 형태를 조금 더 권장)
- 타입 변수[]
- 배열의 생성과 초기화
- 자료형[] 배열이름 = new 자료형[길이]; // 배열생성(초기값으로 초기화)
- 자료형[] 배열이름 = new 자료형[]{값1, 값2, 값3, 값4}; //배열 생성 및 값 초기화
- 자료형[] 배열이름 = {값1, 값2, 값3, 값4};
- 참조자료형의 기본값은 null
- 배열의 메모리 생성과정
- int[] nums = new int[3];
- 배열의 순회 : 반복문을 이용해 배열의 요소를 순회 / for-each문 → for(자료형 변수명 : 반복할 수 있는 것){}
- 배열의 복사 : 배열은 생성하면 길이를 변경할 수 없기 때문에 더 많은 저장공간이 필요하다면 큰 배열을 생성하고 이전 배열의 값을 복사해야함.
- 나머지 남는 칸은 초기값으로..
- 반복문으로 할당 가능
- 최대최소값 찾기 : min은 크게 만들고, max는 작게 만들어서 시작→ 기초자료형을 객체로 만들어 놓은 것이 Integer
- 빈도수 구하기 : 수의 범위를 알고있다면, 해당크기 +1만큼 new int, 그 인덱스값에 값 ++ , count[arr[i]]++, 최대수를 알고있어야 쉬움 → APS 카운팅정렬
- 2차원 이상의 배열, 멀티탭
- 배열 요소로 또 다른 배열을 가지는 배열
- 2차원 배열은 배열요소로 1차원 배열의 참조를 가지고, 3차원 배열은 배열요소로 2차원 배열의 참조를 가짐.
- int[][] iArr (선호)
- int iArr[][]
- int[] iArr[]
- 탐색 : grid[i][j] :i랑 j조절
- %n: 현재까지 출력된 문자열 숫자
'BackEnd > JAVA' 카테고리의 다른 글
[JAVA]제어문 (0) | 2023.07.22 |
---|---|
[JAVA]변수와 자료형/연산자 (0) | 2023.07.22 |
[JAVA] 자바 기본 (0) | 2023.07.22 |