저장(push) 추출(pop)
스택은 배열에 유리하다.
저장(offer) 추출(poll)
큐는 링크드리스트를 가지고 만드는 것이 유리하다.
Stack st = new Stack();
boolen empty() : Stack이 비어있는지 알려준다.
Object peek() : Stack의 맨 위에 저장된 객체를 반환. pop()과 달리 Stack에서 객체를 꺼내지는 않음. 즉 꺼내지 않고 확인만 한다. (비었을 때는 EmptyStackException발생)
Object pop() : Stack의 맨 위에 저장된 객체를 꺼낸다(삭제). (비었을 때는
EmptyStackException발생)
Object push(Object item) : Stack에 객체(item)를 저장한다
int search(Object o) : Stack에서 주어진 객체(o)를 찾아서 그 위치를 반환, 못찾으면 -1을 반환. (배열과 달리 위치는 0이 아닌 1부터 시작)
=> ArrayList의 indexOf()와 비슷한데 indexOf는 0부터 시작함
boolean add(Object o) : 지정된 객체를 Queue에 추가한다. 성공하면 tru를 반환. 저장공간이 부족하면 illegalStateException 발생
Object remove() : (삭제)Queue에서 객체를 꺼내 반환, 비어있으면 NoSuchElementException 발생
Object element() : 삭제없이 요소를 읽어온다. peek 와 달리 Queue 가 비었을 때 NoSuch ElementException 발생
boolean offer(Object o) : (추가)Queue에 객체를 저장, 성공하면 true 실패하면 false를 반환
Object poll() : (삭제)Queue에서 객체를 꺼내서 반환. 비어있으면 null을 반환.
Object peek() 삭제없이 요소를 읽어 온다. Queue가 비어있으면 null을 반환