배열 Array
베이직자바
2019-12-04 22:29:50
▶선언과 초기화 방법
int [ ] number = new int[5]
int [ ] number = new int [ ] {1,2,3,4,5}
int [ ] number = {1,2,3,4,5}
변수는 값을 하나만 저장할 수 있지만, 배열은 값을 여러 개 저장할 수 있다.
똑같은 변수지만 값이 여러 개 이므로 효율적으로 다룰 수 있다.
데이터 타입 [ ] 변수 이름으로 선언. 대괄호는 이름 뒤에 붙여도 된다.
int [ ] number = new int[5]
: 크기가 5인 ( = int 타입 숫자를 5개 넣을 수 있는) 배열 초기화. 기본값인 0 이 저장된 채로 생성.
int [ ] number = new int [ ] {1,2,3,4,5}
: 배열의 크기가 아닌 값을 넣음.
int [ ] number = {1,2,3,4,5}
: 선언과 초기화를 동시에 하는 것. 좌변과 우변을 따로 작성하면 컴파일 에러 발생.
배열은 참조형 타입으로, 값이 아닌 값이 저장되어 있는 주소를 저장한다.
int [ ] array;
: 배열의 주소를 저장할 공간이 만들어진다.
array = new int[5];
: 배열이 생성되고 그 주소가 저장된다.
new
: 새로운 저장공간 생성 및 주소 반환.
▶출력
System.out.println(array);
: array 의 주소가 출력됨.
System.out.println(array[4])
: 값에 접근하기 위해 인덱스 번호를 넣었다.
*인덱스로는 int 타입만 사용할 수 있다. (리터럴, 변수, 상수, 연산 등.)
Arrays.toString(array);
: 모든 값을 출력하고 싶을 때
String arrayStr = Arrays.toString(array);
System.out.println(arrayStr);
: String 에 담을 수 있다.
*배열의 크기는 한 번 정해지면 변경할 수 없다.
크기가 고정되기 때문에 수정 시 더 저장하고 싶다면 새로 더 큰 배열을 만들어야 한다.
▶값 넣기
배열 이름[인덱스 번호] = 값;
array[0] = 10;
값들이 일정한 규칙이 있다면 반복문을 통해 모든 값을 넣을 수 있다.
for (int i = 0; i < Arr.length; i++) {
System.out.println(Arr[i]);
}
=> 0~Arr 의 마지막 인덱스까지 0~ Arr의 길이까지의 값이 들어갈 것이다.
Arr 의 길이를 알고 있다고 하더라도 숫자를 사용하는 것을 하드코딩이라고 한다.
.lengh 를 사용하는 것이 더 좋은 코드이다.
▶ 향상된 for 문
for wich 문이라고도 부름.
for (int number : numbers) {
System.out.println(number) ;
}
=> int number 는 이 포문 안에서 사용할 변수이다. i 같이.
numbers 배열의 0번 인덱스부터 차례대로 number 변수에 넣는데, 0번 넣고 중괄호 실행,
1번 넣고 중괄호 실행.... 반복함.
배열에 있는 값을 차례대로 앞에 있는 변수에 넣고 중괄호를 실행하는 것.
얘는 배열에 있는 내용을 읽을 수는 있지만, 배열에 저장하려면 배열의 인덱스에 접근한 후
저장해야하기 때문에 값 저장은 못한다.
'Java' 카테고리의 다른 글
java - 문자배열 String Array (0) | 2023.03.13 |
---|---|
java - 정렬 Sort (0) | 2023.03.13 |
java - 반복문 Repetitive Statement (0) | 2023.03.13 |
java - 조건문 Conditional Statement, import (0) | 2023.03.13 |
java - 논리연산자, 그 외 연산자 (0) | 2023.03.13 |