Stack
ユースケースにはデータ構造が必要です。アイテムをデータ構造にプッシュできる必要があり、スタックから最後のアイテムのみを取得したい。スタックのJavaDocは次のように述べています。
Deque インターフェイスとその実装によって、より完全で一貫性のある LIFO スタック操作のセットが提供されます。これは、このクラスより優先して使用する必要があります。例えば:
Deque<Integer> stack = new ArrayDeque<>();
メソッドに対してローカルなこのデータ構造を使用するため、ここでは同期動作は絶対に望んでいません。これとは別に、なぜここを好む必要があるDeque
のStack
ですか?
PS: Deque の javadoc には次のように書かれています。
Deques は LIFO (Last-In-First-Out) スタックとしても使用できます。このインターフェイスは、従来の Stack クラスよりも優先して使用する必要があります。