본문 바로가기
IT/Java

자바 배열 알아보기

by flatsun 2019. 1. 15.
반응형

배열 용도 보면 일괄처리시 사용하고 어 뭐 그런다고 하는데

지금 뭐 프로젝트에 배열 사용하고 그런거 아니지 않은가


그냥 어떻게 쓰는지나 알아보자


먼저 배열은 모든 데이터형으로 선언 가능하다

그리고 길이 변경이 안된다,

 즉 한번 설정한 크기에서 변경이 안된다는 거다


일단 뭐 배열이나 정의를 해 보자



IntArray라는 배열을 정의해 봤는데


배열을 정의하려면

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

를 쓰면 정의가 가능하다


int가 들어가는 int형 배열 IntArray를 만드는데

크기는 3개를 줬다


 이제 IntArray 배열의 크기가 3이니

 3칸을 사용할 수 있다는 것으다


그림으로 그려서 설명하려 했는데

그림도 못 그리고 다시 사진으로 3칸이 뭔 말인지 알아봐 보자



int IntArray[] = new int[3] 은

결국 3칸짜리 IntArray[]를 정의한건데


[] [] [] 이렇게 세칸이 생겼다고 생각하면 된다

칸은 1부터 시작하는게 아니라 0부터 시작하고 3칸을 만들었으니

IntArray[0]부터 [2]까지 사용할 수 있는 것이다


0,1,2에 각각 1,2,3을 넣고 출력을 하면?



짜잔짠!! 1,2,3이 각각 출력이 된다


이번에는 배열 크기 밖의 범위인 3에다가 숫자를 넣고 돌려보자


크기를 3으로 줬는데

4에 해당하는 [3] 에 4를 줬지만

에러가 뜨지 않고 의외로 멀쩡해 보인다


이제 실행을 하면..



당연하게도 에러가 뜨는데

내용을 보니 ArrayIndexOutOfBoundsException : 3이 뜬다


그러니까 배열은 3칸 까지만 넣겠습니다! 라고 정의를 해 놓고

왜 4번째 칸(0부터 시작이기 때문에 3)을 사용하냐는 말인데


배열은 정의한 크기 만큼만 사용할 수 있다

그니까 [3] 이면 3칸, [50]이면 50칸을 쓸 수 있다는건데


다 안쓰는건 문제가 안되지만

넘게 쓰면 에러가 발생한다

 

이제 간단하게 정리를 해 보자면


배열은 모든 데이터형으로 정의 가능하지만

정의한 데이터형만 배열 안에 넣을 수 있고


배열 정의 시 지정한 크기(칸) 이상은 삽입하면 출력 시 에러가 뜬다

배열 값은 배열명[불러오려는 배열 번호]로 불러올 수 있고


처음에 한가지 방법으로만 정의를 했지만

int arr = new int[3] 말고도

int arr[] = {1,2,3};

int[] arr2 = new int[]{10,20,30}; 

이런 식으로도 가능하다


물론 배열의 크기는 {} 안에 쓴 수만큼으로 결정된다

반응형

'IT > Java' 카테고리의 다른 글

자바 3차원 배열 알아보기  (0) 2019.01.17
자바 2차원 배열 알아보기  (0) 2019.01.16
자바 메소드(Method) 알아보기  (5) 2019.01.14
자바 객체화 알아보기  (2) 2019.01.13
자바 Dead Code 알아보기  (0) 2019.01.12

댓글