티스토리 뷰

Java/개념

JAVA/Stack와Queue

정복잉 2020. 5. 29. 21:47
반응형
package day18;

import java.util.ArrayDeque;
import java.util.LinkedList;
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Stack;

public class Test01 {
	public static void main(String[] args) {
		Stack<Integer> st = new Stack<Integer>();
		st.add(13);
		st.push(14);
		st.push(15);
		st.push(16);
		System.out.println("Stack의 맨위 객체에 저장된 것 : "+st.peek());
		while(!st.empty()) {			
			System.out.println(st.pop());
		}
		Queue<Double> q = new LinkedList<Double>();
		
		q.add(3.14);
		q.add(2.74);
		q.offer(7.89);
		q.add(5.18);
		
		System.out.println("Queue의 LinkList의 상단 객체의 저장된 값 : "+q.peek());
		while(! q.isEmpty()) {
			System.out.println(q.poll());
		}		
		Queue<Integer> pq = new PriorityQueue<Integer>();
		pq.add(1);
		pq.add(4);
		pq.add(5);
		pq.add(2);
		pq.add(3);
		System.out.println("Queue의 PriorityQueue의 상단 객체의 저장된 값 : "+pq.peek());
		while(! pq.isEmpty()) {
			System.out.println(pq.poll());
		}

※개념정리

 

Stack?

LIFO(Last In First Out)구조 = 마지막에 저장한 데이터를 가장 먼저 꺼내는 방식

 

add/set/push : 객체추가

pop  : 맨 위 객체 삭제

peek : 맨 위 객체 반환

 

Stack -> 배열

Double[ ] array = set.toArray(new Double[set.size]);

 

배열->Strack (x)

반복자 가능

 

Queue

FIFO(First In First Out)구조 = 처음에 저장한 데이터를 가장 먼저 꺼내는 방식

 

add/offer : 객체추가

remove : 객체삭제 / 객체가 비웠다면 에러

poll : 객체삭제 / 객체가 비웠다면 null 반환

element : 객체읽기 / 비웠다면 에러

peek : 객체읽기 / 비웠다면 null 반환

 

*LinkedList는 Queue에 속한다.

Oueue<String> queue = new LinkedList<String>( ); (가능)

 

PriorityQueue

저장순서와 상관없이 우선순위가 높은 것부터 꺼내는 특징이 있는 컬렉션인다.

또한 null을 저장 할수 없다.

 

'Java > 개념' 카테고리의 다른 글

JAVA/CollectionFramework/TreeSet  (0) 2020.05.30
JAVA/CollectionFramework/HashSet  (0) 2020.05.30
JAVA/ArrayList와LinkedList/Iterator/for-each  (0) 2020.05.29
JAVA/CollectionFramework/LinkedList  (0) 2020.05.29
JAVA /Collection Framework/ArrayList  (0) 2020.05.29
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함