본문 바로가기
개발공부/Java

[자바] 배열을 알아보자.

by dokii 2021. 3. 5.
728x90
반응형

1. 배열

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

 

1-2. 배열의 선언과 생성

int[] score;
String[] name;

타입[] 변수이름 = new 타입[길이] //배열을 선언과 생성을 동시에.

 

1-3. 인덱스의 범위는 0부터 배열길이-1 까지.

 

1-4. 배열의 초기화

int[] score = new int[5];

//for문을 이용해서 초기화
for(int i=0; i<scoer.length; i++)
	score[i] = i*10 + 50;
    
//배열의 생성과 초기화를 동시에
int[] score = new int[] [50,60,70,80,90};

1-5. 배열의 복사

첫번째> for문을 사용하는 방법.

int[] arr = new int[5];
iont[] tmp = new int[arr.length*2] // 기본 배열보다 길이가 2배인배열을 생성할때

for(int i=0; i<arr.length; i++)
	tmp[i] = arr[i];

arr = tmp; //참조변수 arr이 새로운 배열을 가리키게 한다.




두번째> System클래스 사용.

System.arraycopy()를 이용한 배열의 복사
ex) //배열 ballArr의 앞에서 3개의 수를 배열 ball3로 복사한다.
		System.arraycopy(ballArr, 0, ball3, 0, 3);

 

1-6. 배열의 활용

-총합과 평균

-최대값과 최소값

-섞기

-임의의 값으로 배열 채우기

-정렬하기

-빈도수구하기

 

 

2. String 배열

2-1. String 배열과 생성

String[] name = new String[3];

 

2-2. String배열의 초기화

String[] name = new String[] {"Km","Park","Yi"}; //new String[]을 생략할수도 있다.

2-3. String클래스의 주요 메서드

char chatAt(int index) // 문자열에서 해당 위치에 있는 문자를 반환한다.

int length() //문자열길이 반환.

String substring(int from,int to)//문자열에서 해당 범위에있는 문자열 반환. 단, to는 포함되자않음.

boolean equals(Object obj)//문자열의 내용이 obj와 같은지 확인한다. 같으면true. 다르면 false

char[] toCharArray()//문자열을 문자배열로 변환하여 반환한다.

2-4. char배열과 String클래스의 변환

char[] chArr = {'A', 'B', 'c'};

String str = new String(chArr);//char배열을 String으로.
shar[] tmp = str.toCharArray();//String을 char배열로.

 

3. 다차원 배열

3-1. 2차원배열의 선언과 인덱스

타입[][] 변수이름;

int[][][ score = new int[4][3]; //4행 3열의 2차원 배열을 생성한다.

3-2. 2차원 배열의 초기화.

>직접 값을 넣어 초기화
int[][] arr = new int[][] {
                            {4,5,6}
                           ,{7,8,9}
                           };
                           
 
 
>for문을 이용해 초기화
for (int i=0; i<sore.length; i++) {
	for (int j=0; j<sore[i].length; j++) {
    	score[i][j] =10;
    }
}

3-3. 가변 배열

int[][] score = new int[5][3]; // 5행 3열의 2차원배열생성.

//두번째 차원의 길이를 지정하지 않으면?
int[][] score = new int[5][];

//각 행마다 다른 길이의 배열을 생성하는 것이 가능해진다!

3-4. 다차원 배열의 활용

- 좌표에 x표시하기

- 빙고

- 행렬의 곱셈

- 단어맞추기

 

 

728x90
반응형

댓글