배열이란?
여러 데이터를 하나의 이름으로 그룹핑하여 관리하기 위한 자료구조
거의 모든 언어에 포함
배열의 구성
public class ArrayTest { int[] numbers1 = new int[4]; // int[]에서 // int는 엘리먼트의 데이터 타입, []은 배열을 의미 // new int[4]에서 // new는 생성자, [4]는 배열의 크기 }
배열은 엘리먼트로 구성되어 있고,
엘리먼트는 index와 value로 구성되어 있다.
학생1 |
학생2 |
학생3 |
학생4 |
0 |
1 |
2 |
3 |
여기서 학생1이 value이고 0은 index
학생1과 0을 묶어서 엘리먼트 하나를 이룬다.
배열의 생성
public class ArrayTest { int[] numbers1 = new int[4]; int[] numbers2 = {10, 20, 30, 40}; int[] numbers3 = new int[] {10, 20, 30, 40}; }
배열에 들어갈 값을 미리 알고 있을 경우, 생성과 초기화를 한번에 할 수 있다.
배열의 조회
public class ArrayTest { public static void main(String[] args) { int[] numbers1 = new int[4]; int[] numbers2 = {10, 20, 30, 40}; int[] numbers3 = new int[] {10, 20, 30, 40}; // 나중에 배열 초기화 방법 numbers1[0] = 10; numbers1[1] = 20; //배열의 값조회(인덱스를 이용) System.out.println(numbers1[0]); // 10이 출력 //배열의 길이 System.out.println(numbers1.length); // 4가 출력(처음 만들때 4개의 방을 만들었음) } }
배열과 반복문 (배열 사용법!!)
//배열의 길이 System.out.println(numbers1.length); // 4가 출력(처음 만들때 4개의 방을 만들었음) for(int i=0; i
배열의 단점과 장점
단점 : 배열의 크기가 조정이 불가능, 처음 생성할 때 크기로 고정
별다른 기능(메서드)가 없다.
장점 : 크기가 고정되어있고, 별다른 기능이 없기 때문에 작고 가볍고 단순하다.
이는 다른 곳의 부품이 되기 쉽다는 의미, 배열의 확장성이 강하다!! 다른 자료구조나 활용도 면에서...
참고: https://opentutorials.org/module/1335/8738
'자료구조' 카테고리의 다른 글
[Map] HashMap (0) | 2017.03.10 |
---|---|
[Set]HashSet의 특징 (1) | 2017.03.09 |
[그래프]넓이 우선 탐색(BFS) (0) | 2017.03.07 |
[그래프] 인접리스트와 인접행렬을 이용한 구현 (0) | 2017.02.26 |
ArrayList와 LinkedList (0) | 2017.01.02 |