2017-07-30 13 views
2

配列のすべての要素を使用して、Javaでキュー(またはスタック)を作成したいとします。 これは、アレイ上のループを使わないで、1行で行うことができますか?配列をキューに変換

+0

この[記事](https://stackoverflow.com/questions/23485944/how-to-convert-list-to仮定-queue-to-achie-fifo)が役立つかもしれません。 –

+0

このリンクを参照してください。 https://stackoverflow.com/questions/41153502/convert-queue-into-long-array –

答えて

5

これは動作するはずです。 yourArrayは入力配列です。あなたが扱っているデータの種類に応じて、オブジェクトを置き換えます。

Queue<Object> queue = new LinkedList<>(Arrays.asList(yourArray)); 
+0

キューでは動作しますが、スタックでは動作しません。 – TeeMee123

0

スタックの場合、スタックはベクタークラスを拡張するため、スタックの場合はベクターオブジェクトを作成する必要があります。

Stack<Object> stack = (Stack<Object>) new Vector(Arrays.asList(theArray)); 
0

別のワンライナーはstream-apiであり:

int[] numbers = new int[]{1,2,3,4}; 
Queue<Integer> queue = Arrays.stream(numbers) 
         .boxed().collect(Collectors.toCollection(LinkedList::new));