为什么Java标准库中没有堆栈集合类型的接口?

Mar*_*vic 1 java collections interface data-structures

队列通常以FIFO(先进先出)方式对元素进行排序,而堆叠采用LIFO(后进先出)方式.

在Java标准库中,有一个特定的接口,称为Queue建模队列和一堆实现它的类.

虽然有实施堆栈,如类Stack(其延伸Vector), ArrayDeque(其中,如在规定的JavaDoc,"很可能是快于Stack作为电池堆使用时")和LinkedList(与其pushpop方法),也没有特定的接口用于堆栈集合类型.

为什么Java标准库中没有堆栈集合类型的接口?

Evg*_*eev 5

请参阅java.util.Deque接口API

Deques也可以用作LIFO(后进先出)堆栈.应优先使用此接口,而不是传统的Stack类.当deque用作堆栈时,元素将从双端队列的开头推出并弹出.

Deque有push,pop和peek方法