[Java] 1차원 배열, 다차원 배열
배열
- 각각의 메모리 공간을 나란히 나열 한 것을 배열이라 한다.
동일한 자료형의 변수를 둘 이상 나란히 할당 한 것
.- 배열은 인덱스를 통해 데이터를 찾기 때문에 속도가 빠르다.
- List 자료구조에 비해 속도가 빠르지만, 데이터의 삭제 면에서는 좋지 않다.
- 배열은 데이터
삭제
시 빈 메모리 공간이 생겨 리소스 관리 차원에서 List 구조에 비해 좋지 않다.
1차원 배열의 이해와 선언 방법
1차원 배열
- 타입이 같은 둘 이상의 데이터를 저장할 수 있는 1차원 구조의 메모리 공간.
1차원 배열의 선언 방법
- int [] ref = new int[5]; // 배열 생성
- int형 변수 5개의 메모리 공간을 생성 한다.
- 해당 메모리 공간에 저장된 배열 데이터의 참조 값이 반환 된다.
배열 선언문에 대한 세세한 이해와 결과
1차원 배열
배열 역시 하나의 Instance다??
배열의 활용: 값의 저장과 참조
배열의 활용
- 배열의 인덱스(index)는 0부터 시작이 된다.
값의 저장과 참조의 예
Box [] array = new Box[3];
array[0] = new Box("First");
array[1] = new Box("Second");
array[2] = new Box("Third");
배열
에 클래스의인스턴스
를 생성해 넣을 수 있다.배열 요소
는 데이터에순차적인 접근
이가능
하다.
배열을 생성과 동시에 초기화
//배열 생성
int [] arr = new int[3];
//배열 생성 및 초기화
int [] arr = new int[] {1, 2, 3};
//배열 생성 및 초기화
int [] arr = {1, 2, 3};
배열의 참조 값과 Method
배열의 참조 값과 Method
- 매개변수 인자로 배열의 참조 변수를 전달 할 수 있다.
- 배열의 참조 값을 반환 타입으로 지정 할 수 있다.
배열의 디폴트 초기화
//기본 배열 선언
int [] ar = new int[10];
String [] ar = new String[10];
//1. 두 번째 인자로 전달된 값으로 배열을 초기화
public static void fill(int[] a, int val)
//2. 인덱스 fromIndex ~ (toIndex-1)의 범위까지 val의 값으로 배열 초기화
public static void fill(int[] a, int fromIndex, int toIndex, int val)
// Java.Util.Arrays Class에 정의되 있는 메서드, 원하는 값으로 배열 전부 또는 일부를 채울 때 사용하는 메서드.
For-Each
int [] ar = {1, 2, 3, 4, 5};
//[1]
for(int i=0;i<ar.length;i++){
System.out.println(ar[i]);
}
//[2]
for(int e : ar){
System.out.println(e);
}
for~each문
- 현재 배열에 존재하는 데이터를 순차적으로 받아 처리한다.
- 하나의 Instance를 'e'에 저장한다 생각해도 된다.
3 다차원 배열의 이해와 활용
2차원 배열
- 1차원 배열이 절대적으로 많이 사용이 되지만, 2차원 배열 역시 사용이 된다.
- 2차원 배열은 1차원 배열의 모임의 형태로 구현이 된다. (상식)
- 2차원 배열은 1차원 배열의 모임 이기에 데이터 저장 길이를 조절 할 수 있다.
2차원 배열의 생성
2차원 배열 생성
- int [][] arr = new int[3][4];
- new int[3][4] → 세로
3줄
, 가로4줄
을 의미하는2차원 배열 선언
. 길이
가4
인2차원 배열
을3개
묶어서 선언 하겠다는 의미.
2차원 배열의 접근
2차원 배열의 접근
0-0
0-1
0-2
1-0
1-1
1-2 .....
2차원 배열의 예
//2차원 배열의 초기화
int [][] arr {
{11, 22, 33},
{44, 55, 66},
{77, 88, 99}
};
int [][] arr {
{11},
{44, 55, 66},
{77, 99}
};
Author And Source
이 문제에 관하여([Java] 1차원 배열, 다차원 배열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ym1085/Chapter07저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)