프로그래밍 정리/자바

자료구조(Data Structure)와 자료구조의 기본(Set, List, Map)

주누다 2013. 5. 27. 22:41
반응형

자료구조(Data Structure)

- 자료를 구조적으로 정리하는 것을 자료구조(Data Structure)fkrh gksek.

- 구조적이란 자료를 효율적으로 사용할 수 있게 만드는 것

- 모든 사용 데이터를 db에 저장할 수는 없는 일

- java.util.* 패키지의 자바 컬렉션 프레임워크(JCF)에서 자료구조 방법 제공

- 배열의 정적인 한계를 극복하기 위해서

- set계열, list계열, map계열


컬렉션 프레임워크(JCF)

- Colletion인터페이스를 구현하는 클래스

- 객체를 저장하고 핸들하는 작업을 수행

- 동적으로 필요할 때 메모리를 확장할 수 있는 장점

- 프로그램 실행시의 소형데이터베이스 가능

- 데이터의 수정, 삭제, 검색 삽입의 기능

- 대표적으로 Vector와 HashTable이 있음

- 컬렉션 클래스는 다음의 인터페이스를 구현

- java.util.Collection

-> 순서 없는 단순한 요소들의 집합

- java.util.Set

-> 중복을 허용하지 않는 요소들의 집합

- java.util.List

-> 순차적 나열, 순서지정이 가능한 요소들의 집합

- java.util.Map

-> Key와 Key에 대응하는 값으로 이루어진 구조

- java.util.SortedSet

-> 값들이 정렬된 Set

- java.util.SortedMap

-> key가 정렬된 Map


Set

- 순서가 없고 중복할 수 없는 집합

- set계열인 HashSet의 객체를 생성

- set계열은 인터페이스Set을 구현한 클래스

- add, clear, size, remove 메서드

- object 타입으로 리턴. <- 다형성을 처리하기 위해

- toArray 오브젝트 배열로 리턴

- 배열과 마찬가지로 length 사용

- colletion 인터페이스랑 같은 메서드를 갖고 있음


Set 메서드

-> boolean add(Object obj)

: 객체를 더하기 위한 메소드 / 만일 호출후 컬렉션이 변하면 true반환

-> boolean addAll(Collection c)

객체를 더하기 위한 메소드 / 만일 호출후 컬렉션이 변하면 true반환

-> boolean contains(Object obj)

: 내용을 조사하기 위한 메소드

-> boolean containsAll(Collection c)

: 내용을 조사하기 위한 메소드

-> boolean isEmpty()

: 내용을 조사하기 위한 메소드

-> int size()

: 내용을 조사하기 위한 메소드

-> Iterator iterator()

: 컬렉션의 요소를 방문할 때 사용하는 반복자 반환

-> void clear()

: 객체 제거를 위한 메소드 / 호출 후 컬렉션이 변화면 true 반환

-> boolean remove(Object obj)

: 객체 제거를 위한 메소드 / 호출 후 컬렉션이 변화면 true 반환

-> boolean removeAll(Collection c)

지정된 조건자에 정의된 조건과 일치하는 요소를 모두 제거

-> boolean retainAll(Collection c)

: 두 개의 List 중복 비교. 같다면 true, 틀리면 false를 리턴

-> Object[] toArray()

: 배열로의 전환

-> Object[] toArray(Object array[])

: 배열로의 전환. 파라미터를 넣음으로써 배열의 크기가 달라짐.



List

- 꼬리를 물고 일렬로 나열하는 것과 같음 순서는 있고 중복 가능


Map

- 키와 값으로 대상을 찾음. 키는 중복될 수 없음.


반응형

'프로그래밍 정리 > 자바' 카테고리의 다른 글

List  (0) 2013.05.29
Iterator(반복자)  (0) 2013.05.29
배열참조  (0) 2013.05.27
배열의 복사  (0) 2013.05.27
가변길이변수  (0) 2013.05.20