JAVA/Language

JAVA Array (배열)

오늘도개발 2022. 8. 20. 18:30

1.  java 배열이란?

 

  같은 type의 변수를 하나로 묶어 다수의 변수를 프로그램 적으로 손쉽게 다룰 수 있게 하는 문법

 

변수 100개를 사용하기 위해서는 배열을 사용하지 않으면 많은 노력이 필요하지만 반복문과 배열을 활용하면 쉽게 사용할 수 있다. 

 

추가설명> 과거 단순한 메모리를 이용한 칩에서는 메모리를 순차적으로 접근하는 것이 성능이 조금더 뛰어났지만, RAM을 사용한

이후로 부터는 위치와 관계없는 속도를 가지게 되었고 실제 컴파일러에서 RAM을 활용하기에 배열을 사용하지 않은 코드와 사용한 코드는

거의 같은 방식으로 동작한다.(성능 같음)

 

 

2. 배열의 선언/생성

 

 배열의 선언과 생성은 다음과 같이 한다.

 

 선언 : 타입[] 변수이름; 또는 타입 변수이름[];

 

 생성 : 변수이름 = new 타입[길이];

 

추가설명 > 다음과 같이 선언 + 생성으로 간편하게 한줄로 작성할 수 있다.

3. 배열 초기화

 

 배열의 초기화를 지정하지 않을 경우 타입의 기본 초기값이 입력된다.

 

 ex) int = 0, char = null 등...

 

배열의 값이 상수로 생성(컴파일)시 지정된 경우라면 다음과 같이 초기화 할 수 있다.

 

int numbers[] = new int[100];

 

numbers = { 0, 1, 2, ... , 99 };

 

4. 배열의 index 접근

 

배열의 특성 위치의 원소에 값을 넣거나 뺄 때에는 다음과 같이 사용한다.

 

입력: numbers[인덱스 값] = 위치에 넣을 값 ;

 

출력: numbers[인덱스값] 

 

5. 문자(char)열 -> String

 

 문자를 단순하게 알파벳으로 사용하지 않고 하나의 단어 등 알파벳모음(배열)로 사용할 경우 char 배열을 사용해도 되지만

 

String이라는 클래스를 기본적으로 제공해주고 그 안에 다양한 기능들(api)이 있기 때문에 String 클래스로 많이 사용한다.

 

편의기능 중 예를 들면 문자열 합치기, 검색 등 이있다.

 

사용방법은 선언 및 생성은 기본적인 자료형과 같이 사용한다.

 

문자열 배열을 사용하고 싶은 경우에는 위의 배열 사용법과 동일하게 사용하면된다.

 

추가설명 > String은 char[]를 편리하게 사용하기 위해 만든 클래스이다. 그러므로 C 같이 예전에 만들어진 문법에서는

char[]를 사용하여 문자열을 관리했다.

 

6. 다차원 배열

배열을 단순하게 1차원적으로 직선으로 추가할 수 있고 추가적으로 2차원 3차원으로도 활용할 수 있다.

 

선언 및 생성 방법은 다음과 같다.

 

int[][] nums = new nums[행 갯수][열 갯수];

 

2차원 배열의 값 접근 방법은 다음과 같다.

 

배열변수명[행 인덱스][열 인덱스]