키보드워리어

[자바]Array 배열 - 기초 본문

JAVA/입문

[자바]Array 배열 - 기초

꽉 쥔 주먹속에 안경닦이 2023. 2. 7. 13:43
728x90

안녕하세요 키보드 워리어입니다.

배열이 왜 필요한지, 어떤 역할을 하는지 이해하는 것은 정말 중요합니다.

 

이름과 점수를 가진 클래스를 생성해줍니다.

String name;
int mark;

점수의 합을 알고 싶을 때, 또는 점수를 추가하고 싶거나 삭제하고 싶을때 유용하게 할 수 없을까요?

 

이럴 땐 배열을 이용하면 편합니다.

 

배열 기초
배열 기초

  1. marks는 배열입니다. [] 기호 보이시죠?
  2. marks 배열은 다중 int값을 가졌습니다.
  3. marks는 3가지 값을 가진 배열입니다.

그리고 중요한 점은 index가 0부터 시작한단 점입니다. 저는 처음 배울 때 이게 헷갈리더라고요.

 

위에 경우엔 index는 0 to 2이며 length는 3인 거죠. makrs [0]부터 [2]까지 검색으로 실제 값을 찾아볼 수 있어요.

 

배열 정의 후 요소(=점수, marks)를 구성했다면 배열을 통해서 반복문을 설정할 수 있습니다.

 

배열에 반복문을 설정하는 방법은 동일합니다.

sum값을 저장하는 방법입니다.

배열 반복문이용
배열 반복문이용

"Marks배열 안에 mark에 대해 실행을 반복하겠다."는 의미입니다.

: 기호를 기준으로 왼쪽에는 출력값, 오른쪽에는 배열이 들어갑니다.

 

여기서 int mark는 반복제어변수로, 이 타입은 연결되는 array타입과 같아야 합니다.

이런 구조를 Enhanced for loop (강화된 반복문)이라고 합니다.


조금 딥하게 살펴보면

굳이 처음 [] 배열 안에 개수를 지정하지 않아도 돼요.

요소가 아무것도 없어도 되고 수없이 많은 값이 들어갈 수도 있습니다.

배열 선언방법
배열 선언방법

구문의 왼쪽에는 배열의 타입, 오른쪽에는 콘텐츠 내용이 들어간다 생각해 주세요

 

배열의 타입과 크기만 정의하는 방법도 있습니다.

배열의 타입과 크기만 정의하는 방법
배열의 타입과 크기만 정의하는 방법

각 marks2 [인덱스]마다 따로 불러서 할당해 주기도 가능합니다. 대괄호 [] 안에 들어가는 게 인덱스 정보죠.

원소 구성
원소 구성

 

728x90