JAVA/개념

[JAVA] 04. Array (배열)

밍글링글링 2017. 7. 31.
728x90

1.1 배열(array) 이란?

- 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것

- 많은 양의 값(데이터)을 다룰 때 유용하다.

- 배열의 각 요소는 서로 연속적이다.......

int score1=0, scrore2=0, score3=0, score
1
int[] score = new int[5]; //5개의 int 값을 저장할 수 있는 배열을 생성한다.
cs
4=0, score5=0;
 

 

1.2 배열 선언과 생성(1)

- 타입 또는 변수이름 뒤에 대괄호[]를 붙여서 배열을 선언한다.

 선언 방법  선언 예:
 타입[] 변수이름;  int[] score;
 String[] name;
 타입 변수이름[];  int score[];
 String name[];

 

1.2 배열 선언과 생성(2)

- 배열을 선언한다고 해서 값을 저장할 공간이 생성되는 것이 아니라

 배열을 다루는데 필요한 변수가 생성된다.

int[] score; //배열을 선언한다.
score = new int[5]; //배열을 생성한다.
 

 

1.3 배열의 초기화

- 생성된 배열에 처음으로 값을 저장하는 것

int[] score = new int[5];    //크기가 5인 int형 배열을 생성한다.
score[0] = 100;
score[1] = 90;
score[2] = 80;
score[3] = 70;
score[4] = 60;

int[] score = {100, 90, 80, 70, 60};        //1번
int[] score = new int[]{100, 90, 80, 70, 60};    //2번

int[] score;
score = {100, 90, 80,70, 60};    //에러 발생!

int[] score;
score = new int[]{100, 90, 80, 70, 60};    //OK

int add(int[] arr)

int result = add({100, 90, 80, 70, 60})    //에러 발생!
int result = add(new int[]{100, 90, 80, 70, 60}); //OK
 

 

1.4 배열의 활용

▶ 배열에 값을 저장하고 읽어오기

score[3] = 100; //배열 score의 4번째 요소에 100을 저장한ㄷ.
int value = score[3]; //배열 score의 4번째 요소에 저장된 값을 읽어서 value에 저장.
 

▶ '배열이름.length'는 배열의 크기를 알려준다.

int[] score = {100, 90, 80, 70, 60, 50}
for(int i=0; i<6; i++){
    System.out.println(score[i]);
}
for(int i=0; i<score.length; i++){
    System.out.println(score[i]);
}
 

 

1.5 다차원 배열의 선언과 생성

- '[]'의 개수가 차원의 수를 의미한다.

int[][] score = {
                    [100, 100, 100],
                    [20, 20, 20],
                    [30, 30, 30],
                    [40, 40, 40],
                    [50, 50, 50],
};
 

 

1.6 가변배열

- 다차원 배열에서 마지막 차수의 크기를 지정하지 않고 각각 다르게 지정.

int[][] score = {
                    [100, 100, 100],
                    [20, 20],
                    [30],
                    [40, 40, 40, 40],
                    [50, 50, 50],
};

 

1.7 배열의 복사

▶ for문을 이용한 배열의 복사

int[] number = {1,2,3,4,5};
int[] newNumber = new int[10];

for(int i=0; i<number.length; i++){
    newNumber[i] = number[i]; //배열 number의 값을 newNumber에 저장한다.
}
 

▶ System.arraycopy()를 이용한 배열의 복사

System.arraycopy(arr1, 0, arr2, arr1.length);

arr1[0]에서 arr2[0]으로 arr1.length개의 데이터를 복사.
 

728x90

'JAVA > 개념' 카테고리의 다른 글

[JAVA] 06. OOP2(객체 지향 언어)  (0) 2017.08.01
[JAVA] 05. OOP 1(객체 지향 언어)  (0) 2017.08.01
[JAVA] 03. 조건문, 반복문 (Control Statement)  (0) 2017.07.30
[JAVA] 02. 연산자(Operator)  (0) 2017.07.28
[JAVA] 01. 변수(Variable)  (1) 2017.07.28

댓글