List 인터페이스, List의 구현 클래스, List<E> 인터페이스를 구현 클래스의 인스턴스 저장 특징

CODEDRAGON Development/Java

반응형

 

 

List 인터페이스

http://codedragon.tistory.com/5434

 

 

List의 구현 클래스

List 인터페이스를 구현한 클래스에는 Stack Vector, ArrayList가 있습니다.

List구조인 객체들은 Set과는 다르게 정렬상태를 유지하면서 각 요소들의 접근을 Set보다는 쉽게 할수 있는 구조입니다.

 

구현 클래스

설명

Stack

·       Stack클래스는 객체들의 last-in-first-out(LIFO)스택을 표현합니다.

·       Vector클래스로부터 파생된 클래스입니다.

·       요소를 저장할 때의 push( )메소드와 요소를 빼낼 때의 pop( )메소드 등 총 5개의 메소드를 제공합니다.

Vector

·       배열과 같이 정수 인덱스로 접근 할 수 있는 요소를 가지고 있습니다.

·       배열과 달리  Vector의 크기는 Vector가 생성된 후에 요소를 추가하는 경우에 증대되거나 또는 삭제할 때에 감소할 수 있습니다.

·       요소들의 작업을 위해  Iterator로 작업할 수 있으며 스레드 동기화가 지원되는 List구조입니다.

ArrayList

·       List인터페이스를 구현하고 있는 것뿐 아니라 ArrayList는 배열의 크기를 조작하기 위한 메소드들이 제공됩니다.

·       공백을 포함한 모든 요소들을 저장 할 수 있으며  Vector와 유사하지만 ArrayList는 스레드의 동기화는 지원하지 않습니다.

LinkedList

배열(Array)은 모든 데이터가 연속적으로 존재하지만 LinkedList는 불연속적으로 존재하는 데이터를 서로 연결(link)한 형태로 구성되어 있습니다.

 

 

 

 

 

List<E> 인터페이스를 구현 클래스의 인스턴스 저장 특징

·       동일한 인스턴스의 중복 저장을 허용합니다.

·       인스턴스의 저장 순서가 유지됩니다.