상세 컨텐츠

본문 제목

[JAVA] 배열(배열객체)

IT/JAVA

by o_zeew 2024. 4. 5. 17:44

본문

24.04.05 37일차

 

 

 

배열(배열객체)

생성 방법

 

데이터형[] 배열변수명 = new 데이터형[크기]

데이터형   배열변수명[] = new 데이터형[크기]

데이터형[] 배열변수명;

데이터형[] 배열변수명 = {요소1, 요소2,...}

 

int [] kor = new int[5]

int   kor[] = new int[5]

int [] kor;

int [] kor = {1,2,3,4,5}

 

int [] [] score = new int [5] [3] > 2차원 배열(5행 3열을 뜻함)

 

kor : 메모리 주소

배열 출력으로 수정

 

 


실습

배열 eng에 임의의 값 5개를 대입한 후 반복문(for)를 사용하여 총점을 구하시오.

 

두가지 방법 사용 가능

 

 


 

int score = new int [] {1,2,3,4,5}

int [] score = {1,2,3,4,5}

but, 

int [] score;

score = {1,2,3,4,5} //X 불가능

score = new int [] {1,2,3,4,5} //O 가능

 


객체를 복사할 때 두가지 개념이 존재

1) 얇은 복사 : 객체의 주소가 복사되는 형태

2) 깊은 복사 : 객체의 값들이 복사되는 형태

 

  미션1) kor 배열의 값을 eng배열의 3번째 위치부터 복사

  미션2) kor배열의 값중 1~3번째 값을 eng배열의 3번째 위치부터 복사

 

3) System.arraycopy()함수를 사용한 깊은 복사

 

 

System.arraycopy(A,B,C,D,E)

 

A : 원본배열명

B : 복사할 원본 배열에서의 시작 위치

C : 복사될 대상 배열명

D : 대상배열에서의 시작 위치

E : 복사할 개수

 


 

[응용1] 배열의 값중 최대값,최소값을 찾아내어 출력

 

[응용2] 아래와 같이 이름과 성적이 배열에 저장되어 있을 때 성적이 가장 좋은 학생의 이름을 찾아내어 출력하시오.

성명 성적
홍씨 33
김씨 44
박씨 55
최씨 66
남씨 77

관련글 더보기