본문 바로가기
Java/Java language

[JAVA]8. 컬렉션 구조

by oomm112 2021. 8. 14.

A. 컬렉션이란? 

 - 자바에서 컬렉션 프레임워크(collection framework)란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미한다.

 - 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것입니다.

컬렉션의 대표적인 구조는 이렇게 되어있다.

1) List

 - List인터페이스는 저장되는 요소들의 순서가 유지되며, 중복된 데이터를 허용한다.

 - 인덱스 번호에 의해서 순서를 정렬한다.

2) Set

 - Set인터페이스는 중복된 에디터를 허용하지 않으며, 순서가 유지되지 않는다.

 - 단,  TreeSet은 정렬 기능이 추가되기 때문에 순서가 유지된다.

3) Queue

 - 큐 구조는 한쪽에서 요소를 추가하고 반대 방향으로 요소를 추출하는 형태이다 . 

 - FIFO구조(First In First Out)  

 - 넣을때는 offer / 뺄때는 poll  

4) Map

 - Map 인터페이스는 위 인터페이스들과는 다르게 키와 값 쌍의 형태로 데이터를 저장해준다.

 

B. 컬렉션 인터페이스 주요 메서드

package Collection;

import java.util.Collection;
import java.util.Iterator;

public class collection {
	Collection<String> coll = new Collection<String>() {

		@Override
		public int size() {
			// 요소의 개수를 반환 해주는 메소드이다.
			return 0;
		}

		@Override
		public boolean isEmpty() {
			// 컬렉션이 비어있는 판단하는 메소드이다.
			return false;
		}

		@Override
		public boolean contains(Object o) {
			// 파라미터로 지정도니 객체가 컬렉션에 포함되는지 판단해주는 메소드이다.
			return false;
		}

		@Override
		public Iterator<String> iterator() {
			// 해당 컬렉션 요소들을 작업할 수 있는 Iterator 객체를 반환한다.
			return null;
		}

		@Override
		public Object[] toArray() {
			// 컬렉션에 저장된 요소들을 객체 배열로 반환한다.
			return null;
		}

		@Override
		public <T> T[] toArray(T[] a) {
			// 컬렉션의 요소들을 파라미터로 지정된 배열 객체에 담아서 리턴한다.
			return null;
		}

		@Override
		public boolean add(String e) {
			// 파라미터로 지정된 요소를 컬렉션에 추가한다.
			return false;
		}

		@Override
		public boolean remove(Object o) {
			// 컬렉션에 파라미터로 지정된 요소 객체를 제거한다.
			return false;
		}

		@Override
		public boolean containsAll(Collection<?> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean addAll(Collection<? extends String> c) {
			// 파라미터로 지정된 객체 요소가 컬렉션에 존재하는지를 판단해 주는 메소드이다.
			return false;
		}

		@Override
		public boolean removeAll(Collection<?> c) {
			// 파라미터로 지정된 컬렉션에 포함되어 있는 모든 요소들을 제거한다.
			return false;
		}

		@Override
		public boolean retainAll(Collection<?> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public void clear() {
			// TODO Auto-generated method stub
			
		}
		
	};
}

A. List 인터페이스 주요 메서드들

import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class InfoList {
	List<String> list = new List<String>() {

		@Override
		public int size() {
			// list 
			return 0;
		}

		@Override
		public boolean isEmpty() {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean contains(Object o) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public Iterator<String> iterator() {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public Object[] toArray() {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public <T> T[] toArray(T[] a) {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public boolean add(String e) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean remove(Object o) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean containsAll(Collection<?> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean addAll(Collection<? extends String> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean addAll(int index, Collection<? extends String> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean removeAll(Collection<?> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public boolean retainAll(Collection<?> c) {
			// TODO Auto-generated method stub
			return false;
		}

		@Override
		public void clear() {
			// TODO Auto-generated method stub

		}

		@Override
		public String get(int index) {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public String set(int index, String element) {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public void add(int index, String element) {
			// TODO Auto-generated method stub

		}

		@Override
		public String remove(int index) {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public int indexOf(Object o) {
			// TODO Auto-generated method stub
			return 0;
		}

		@Override
		public int lastIndexOf(Object o) {
			// TODO Auto-generated method stub
			return 0;
		}

		@Override
		public ListIterator<String> listIterator() {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public ListIterator<String> listIterator(int index) {
			// TODO Auto-generated method stub
			return null;
		}

		@Override
		public List<String> subList(int fromIndex, int toIndex) {
			// TODO Auto-generated method stub
			return null;
		}
	};

B. Set 인터페이스 주요 메서드

package Collection;

import java.util.Collection;
import java.util.Iterator;
import java.util.Set;

public class InfoSet {
	public static void main(String[] args) {
		Set<String> infoSet = new Set<String>() {
			
			@Override
			public <T> T[] toArray(T[] a) {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public Object[] toArray() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public int size() {
				// TODO Auto-generated method stub
				return 0;
			}
			
			@Override
			public boolean retainAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean removeAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean remove(Object o) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public Iterator<String> iterator() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean isEmpty() {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean containsAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean contains(Object o) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public void clear() {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public boolean addAll(Collection<? extends String> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean add(String e) {
				// TODO Auto-generated method stub
				return false;
			}
		};
	}
}

C. Queue 인터페이스 주요메서드

package Collection;

import java.util.Collection;
import java.util.Iterator;
import java.util.Queue;

public class InfoQueue {
	public static void main(String[] args) {
		Queue<String> queueInfo = new Queue<String>() {
			
			@Override
			public <T> T[] toArray(T[] a) {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public Object[] toArray() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public int size() {
				// TODO Auto-generated method stub
				return 0;
			}
			
			@Override
			public boolean retainAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean removeAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean remove(Object o) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public Iterator<String> iterator() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean isEmpty() {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean containsAll(Collection<?> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean contains(Object o) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public void clear() {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public boolean addAll(Collection<? extends String> c) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public String remove() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public String poll() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public String peek() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean offer(String e) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public String element() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean add(String e) {
				// TODO Auto-generated method stub
				return false;
			}
		};
	}
}

D. Map의 주요 메소드

package Collection;

import java.util.Collection;
import java.util.Map;
import java.util.Set;

public class InfoMap {
	public static void main(String[] args) {
		Map<Integer, String> maps = new Map<Integer, String>() {
			
			@Override
			public Collection<String> values() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public int size() {
				// TODO Auto-generated method stub
				return 0;
			}
			
			@Override
			public String remove(Object key) {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public void putAll(Map<? extends Integer, ? extends String> m) {
				// TODO Auto-generated method stub
				
			}
			
			@Override
			public String put(Integer key, String value) {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public Set<Integer> keySet() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean isEmpty() {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public String get(Object key) {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public Set<Entry<Integer, String>> entrySet() {
				// TODO Auto-generated method stub
				return null;
			}
			
			@Override
			public boolean containsValue(Object value) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public boolean containsKey(Object key) {
				// TODO Auto-generated method stub
				return false;
			}
			
			@Override
			public void clear() {
				// TODO Auto-generated method stub
				
			}
		};
	}
}
반응형

댓글