안녕하세요. 스마트팩토리입니다.
자바기초 # 020. Array 배열의 선언과 생성, 초기화 (1)에 대해 알아보겠습니다. 자바 기초의 마지막 부분이 아닌가 싶습니다. 물론 마지막이라고는 하나 이부분만 해도 양이 적지 않습니다. 배열을 이해하면 본격적으로 객체지향 프로그램에 접근할 수 있는 기초를 다지게 됩니다. 자바 배열을 다시금 공부하다 보니 나름 실력이 쌓이는 듯한 느낌입니다.
1. 배열이란?
가. 배열이란
-같은 타입(자료형)의 여러 변수를 하나의 집합(묶음)으로 처리하는 자료구조이다.
-배열은 서로 연속적이며 인덱스를 가진다.
-많은 양의 데이터를 다룰 수 있다.
나. 배열의 선언과 형식
(1) 데이터 타입[] 변수명; --> 선언
변수명=new 데이터 타입[배열수]; --->초기화
(2) 데이터 타입[] 변수명 = new 데이터 타입[배열수]--> 선언과 초기화
ex) int[] arr;
arr=new int[2]
int[] arr=new int[2]
(1)과 (2) 는 동일한 것으로 코드를 단순화한 것이 (2) 번입니다.
선언과 초기화에 대한 예를 통해 볼때 변수의 선언과 초기화와 비교해 보면 이해하는데 도움이 됩니다.
배열은 배열의 값이 초기화할때는 0으로 됩니다.
int[] num; 은 배열을 선언하여 메모리 공간을 잡을 예정입니다.
num=new int[3] 선언된 배열 변수에 메모리 공간 3개가 생성된 것으로 기본 값이 없으면 0으로 초기화 됩니다.
3개의 배열값이 순차적으로 int[0], int[1] , int[2] 로 [ 숫자 ] 에서 숫자는 인덱스 번호입니다. 처음 숫자가 1이 아닌 0부터 시작입니다.
출력할때 배열 변수를 출력하면 그의 주소값이 출력되고 , 배열의 실제값을 출력하기 위해서는 배열 인덱스까지 다 작성해야 합니다.
package Arrays;
public class Ex02_01Array {
public static void main(String[] args) {
int[] num;
num=new int[3];
System.out.println(num); --> 배열 num의 주소 출력
System.out.println(num[0]);-->배열 인덱스 0번값 출력
System.out.println(num[1]);-->배열 인덱스 1번값 출력
System.out.println(num[2]);--->배열 인덱스 2번값 출력
int[] num_m=new int[2];
System.out.println(num_m);--> 배열 num_m의 주소 출력
System.out.println(num_m[0]);-->배열 num_m[0]번값 출력
System.out.println(num_m[1]);-->배열 num_m[1]번값 출력
}
}
다. 배열 인덱스의 실제값 변경 및 수정
배열 변수 num을 선언 및 생성 하고 값을 넣어주지 않으면 0으로 초기화가 됩니다. 단 배열의 인덱스는 있어야 합니다.
배열 공간이 없으면 초기화가 안될것이니까요.
선언된 배열의 수 만큼 값을 넣어주면 되고, 그보다 적은 값을 넣어주면 남은 공간으 0으로 됩니다.
일반 변수 처럼 num[0]=10 num[1]=100으로 변경하면 각각 배열값을 변경할 수 있습니다.
배열은 참조변수이기 때문에 배열 변수를 출력하면 주소값이 나오고, 배열변수[인덱스번호]까지 있어서 해당 메모리에 있는 실제값을 볼 수 있습니다.
package Arrays;
public class Ex02_03Array {
public static void main(String[] args) {
int[] num=new int[2];
num[0]=10;
num[1]=100;
System.out.println(num);--> 배열 주소값 출력
System.out.println(num[0]);--> 배열의 인덱스 0번에 있는 값 출력
System.out.println(num[1]);--> 배열의 인덱스 1번에 있는 값 출력
}
}
'Java' 카테고리의 다른 글
자바기초 # 022. array 배열 선언과 초기화(3) 배열 인덱스(index) 와 배열 값 저장 및 출력하기 (0) | 2021.07.30 |
---|---|
자바기초 # 021. Array 배열의 초기화 (2) 값 저장 및 배열값 출력(for문이용) (0) | 2021.07.29 |
자바기초 # 019. do-while 반복문(2) , while 반복문 - break문 ( 1부터 10까지 합 중에서 합계가 100을 넘길때까지 출력하는 프로그램) (0) | 2021.07.26 |
자바기초 # 018. do- while 반복문 1부터 10까지 합 구하기 (디버깅) (0) | 2021.07.26 |
자바기초 # 017. while 반복문 - 1부터 10까지 합, 합이 100을 넘을때 i 값 구하는프로그램(2) (0) | 2021.07.25 |
댓글