-
[Camel][Java] Array ( 배열 )Java/개념 정리 2020. 2. 19. 18:25
배열(Array)은 왜 사용할까?
우리가 배열을 사용하는 이유는 간단합니다. 다수의 변수를 선언할 때의 편의성을 위해서 입니다. 선언해야 하는 변수가 적다면 물론 배열을 사용할 필요는 없습니다. 하지만 예를 들어 한 학교 학생에 대한 수십, 수백개의 변수를 생성해야한다면 배열의 효율성을 확인할 수 있을 것입니다.
만약 300개의 변수의 값을 전부 변경하고 싶을 때 배열을 사용하지 않으면 엄청난 줄의 코드를 작성해야 할 것입니다. 하지만 배열을 사용하면 반복문을 이용해서 동일한 코드를 적용할 수 있게 됨으로써 코드작성의 효율을 높일 수 있습니다.
배열의 생성
배열도 역시 문자열처럼 변수와 메소드로 구성된 인스턴스입니다. 그렇다면 이제 배열을 생성하는 코드를 살펴봅시다.
int[] arr = new int[10];
위 코드에서 처음 등장하는 int[ ]은 참조하는 대상인 arr이 int형 변수로 이루어진 배열임을 알려줍니다. 여기서 이제 우리는 new 키워드를 확인할 수 있고, 이것을 통해 배열의 인스턴스가 생성됨을 알 수 있습니다. 하지만 주의해야할 점은 인스턴스 배열은 참조변수의 배열이라는 점입니다. 즉, 인스턴스로 이뤄진 배열이 아닌 참조변수로 이뤄진 배열인 것입니다. 이렇게 생성된 배열은 참조변수를 통해 매우 간단하게 접근가능합니다.
또한, 배열은 일반 변수처럼 생성과 동시에 초기화가 가능합니다. 초기화 방법에는 여러 방법이 있고 다음과 같습니다.
int[] arr = new int[3] {1,2,3}; int[] arr = new int[] {1,2,3}; int[] arr = {1,2,3}; // 우리가 일반적으로 가장 많이 사용하는 초기화 형태이다.
아 여기서 덤으로 배열의 생성시 int[] arr 과 int arr[]은 완전하게 동일한 의미입니다. 어떤 방식으로 사용할지 선택하는 것은 자유입니다만, 대부분의 개발자들은 전자의 생성방식을 사용합니다. 저도 그냥 전자와 같은 방식으로 쓸래요...ㅎㅎ 내 코드만 보고 살수는 없잖아요? 다른 사람들 코드도 봐야죠!
오늘 배열에 대한 포스팅은 여기까지 입니다. 다음 포스팅은 오늘 다루지않은 2차원배열을 비롯한 다차원배열에 대한 내용을 포스팅할 계획입니다.
'Java > 개념 정리' 카테고리의 다른 글
[Camel][Java] Java에서의 상속(Inheritance)이란? (feat. super 키워드) (0) 2020.02.19 [Camel][Java] Multi-Dimensional Array(다차원배열) feat. 2차원배열 (0) 2020.02.19 [Camel][Java] Console Input - 콘솔 입력 (Scanner) (0) 2020.02.19 [Camel][Java] StringBuilder와 StringBuffer 클래스 (0) 2020.02.19 [Camel][Java] String 클래스의 다양하고 유용한 함수(Method) (0) 2020.02.18