자료구조(Data Structure)
1. 자료구조란
하나의 프로그램은 크게 원하는 산출물을 얻기위해 작성하는 명렁어(흔히 코드라 함)와 명령어를 실행하면서 사용하는 데이터(data)로 이루어진다. 즉, 프로그램이란 데이터를 표현하고, 데이터를 처리하는 것이다. 이러한 데이터를 효율저긍로 사용하도록 구조적으로 저장하고 관리하는 것이 자료구조이다. 이를 통해 데이터의 추가와 삭제, 검색이 효율적으로 이뤄진다.
- 자료구조를 종류별로 분류하면 다음과 같다.
- 자료 관리에는 다양한 자료구조에 맞게 알고리즘이 함께 개발되어 있다. 그러나 모든 상황에 최적화된 유일한 자료구조와 알고리즘은 없다. 상황에 맞게 채택해야 한다.
2. 컬렉션 프레임워크(Collection Framework)
2.1. 컬렉션 프레임워크란
통상 컬렉션(Collection)이라는 의미는 '객체의 집합'을 뜻한다. 컬렉션에서는 객체를 컬렉션에 추가하거나 혹은 삭제하거나, 검색하는 등의 객체 단위의 연산을 제공한다. 또한 다른 컬렉션과 결합하거나 분리하는 집합 연산도 제공한다.
- 자바에서는 자료 관리 기술이 적용된 컬레션을 다양하게 제공하고 있다.
- interface 형태로 제공하기 때문에 구체적인 구현(로직, 알고리즘)은 개발자의 몫이다.
- 자바에서 기본적으로 제공하는 컬렉션 프레임워크의 종류는 다음과 같다.
컬렉션 프레임워크를 제대로 이해하기 위해선 다음과 같은 자바의 개념을 익혀야 한다.
- 다형성, 업캐스팅과 다운캐스팅
- 인터페이스, 추상 메서드와 구현
'개발 공부 > 안드로이드' 카테고리의 다른 글
[RxJava] RxJava란 (0) | 2018.07.04 |
---|---|
[SwipeRefreshLayout] child view가 한 개만 가능하다. (0) | 2018.02.25 |
[Service] 서비스 기본 개념 (0) | 2017.06.21 |
[AsynTask] 기본 개념과 구현 방법 (0) | 2017.06.13 |