Link Search Menu Expand Document

Java Array

Table of contents

  1. Java Array Basic
    1. What is Array?
    2. Features of Array
    3. Constraint of Array
    4. Array Declaration
    5. Array Initialize

Java Array Basic

What is Array?

동일 타입의 데이터를 연속된 공간에 배치시키고 각 데이터에 index를 부여해서 저장하는 자료구조

변수는 한개의 값만 저장 가능해 저장할 데이터의 수가 많아지면 많은 변수가 필요해서 비효율적

배열은 좀 더 효율적인 방법으로 데이터를 저장할 수 있게 하는것

  • 요소(element) : 배열을 구성하는 각각의 값

  • 인덱스(index): 배열에서의 위치를 가리키는 숫자, 인덱스는 언제나 0부터 시작하며, 0을 포함한 양의 정수만을 가짐

Features of Array

▸ 배열도 모두 객체이므로, 각각의 배열은 모두 자신만의 필드와 메소드를 가지고 있음

▸ 배열은 참조변수로서 객체이기 때문에 힙 메모리영역에 저장되고 배열 변수는 힙영역의 배열객체의 메모리주소를 참조하게 됨

▸ 참조할 배열 객체가 없다면 배열 변수는 null값으로 초기화 할 수 있음

다차원배열?

배열은 선언되는 형식에 따라 1차원 배열, 2차원 배열뿐만 아니라 그 이상의 다차원 배열로도 선언가능

하지만 현실적으로 이해하기가 쉬운 2차원 배열까지가 많이 사용됨

Constraint of Array

▸ 배열의 길이는 한번 정의하면 변경할 수 없음

▸ 동일의 데이터타입만 저장할 수 있음

Array Declaration

배열 선언

  • 데이터타입 : 배열 요소로 저장되는 변수의 타입을 명시

  • 배열 이름 : 배열이 선언된 후에 배열에 접근하기 위해 사용

syntax

  1. 데이터타입[] 배열이름; → 되도록 첫번째 방법을 사용하는게 좋음

  2. 데이터타입 배열이름[];

▸ 위와같이 선언된 배열은 new 연산자로 생성 가능

배열이름 = new 타입[배열길이];

▸ 배열길이 : 해당 배열이 몇 개의 배열 요소를 가지게 되는지 명시

▸ 선언과 생성 동시에 하기

데이터타입[] 배열이름 = new 타입[배열길이];

int[] score2 = new int[5];

Array Initialize

배열의 초기화

초기화 블록(initialization block): 괄호({})를 사용하여 초깃값을 나열한 것

초기화 블록을 이용하여 배열을 선언과 동시에 초기화할 수 있음

syntax

  1. 타입[] 배열이름 = {배열요소1, 배열요소2, …};

  2. 타입[] 배열이름 = new 타입[]{배열요소1, 배열요소2, …};

  • 두번째 방법으로 해야할 경우

    ▸ 배열의 선언과 초기화를 따로 진행해야 할 경우

    ▸ 메소드의 인수로 배열을 전달하면서 초기화

int[] grade1 = {70, 90, 80};          // 배열의 선언과 동시에 초기화
int[] grade2 = new int[]{70, 90, 80}; // 배열의 선언과 동시에 초기화
int[] grade3;
// grade3 = {70, 90, 80};             // 이미 선언된 배열을 이 방법으로 초기화하면 오류
int[] grade4;
grade4 = new int[]{70, 90, 80};       // 이미 선언된 배열은 이 방법으로만 초기화

배열 생성 시 자동으로 들어가는 초기값

배열타입초깃값
char‘\u0000’
byte, short, int0
long0L
float0.0F
double0.0 또는 0.0D
booleanfalse
배열, 인스턴스 등null

Table of contents


이 웹사이트는 jekyll로 제작되었습니다. Patrick Marsceill, Distributed by an MIT license.