Java 如何在同一语句中初始化队列

Java 如何在同一语句中初始化队列,java,queue,abstract-data-type,Java,Queue,Abstract Data Type,在数组中,可以按以下方式在开头添加元素 int[] array = {1,2,3,4,5}; 类似地,如何向队列中添加多个条目?像 Queue<Integer> queue = {1,2,3,4,5}; Queue Queue={1,2,3,4,5}; 有什么方法可以做到这一点吗?首先,您必须选择要实例化的队列实现。假设您选择的是LinkedList(它实现了队列) 与任何集合一样,LinkedList有一个构造函数,它接受一个集合,并将该集合的元素添加到列表中 例如: Que

在数组中,可以按以下方式在开头添加元素

int[] array = {1,2,3,4,5};
类似地,如何向队列中添加多个条目?像

Queue<Integer> queue = {1,2,3,4,5};
Queue Queue={1,2,3,4,5};

有什么方法可以做到这一点吗?

首先,您必须选择要实例化的
队列
实现。假设您选择的是
LinkedList
(它实现了
队列

与任何集合一样,
LinkedList
有一个构造函数,它接受一个
集合
,并将该
集合的元素添加到列表中

例如:

Queue<Integer> queue = new LinkedList<>(Arrays.asList(new Integer[]{1,2,3,4,5}));
Queue Queue=newlinkedlist(Arrays.asList(newinteger[]{1,2,3,4,5}));
或者(正如PaulrBear正确评论的那样):

Queue Queue=newlinkedlist(Arrays.asList(1,2,3,4,5));
或者,您也可以利用Java 8流:

Queue<Integer> queue = IntStream.of(1,2,3,4,5)
                                .boxed()
                                .collect(Collectors.toCollection(LinkedList::new));
Queue Queue=IntStream.of(1,2,3,4,5)
.boxed()
.collect(Collectors.toCollection(LinkedList::new));

首先,您必须选择要实例化的
队列
实现。假设您选择的是
LinkedList
(它实现了
队列

与任何集合一样,
LinkedList
有一个构造函数,它接受一个
集合
,并将该
集合的元素添加到列表中

例如:

Queue<Integer> queue = new LinkedList<>(Arrays.asList(new Integer[]{1,2,3,4,5}));
Queue Queue=newlinkedlist(Arrays.asList(newinteger[]{1,2,3,4,5}));
或者(正如PaulrBear正确评论的那样):

Queue Queue=newlinkedlist(Arrays.asList(1,2,3,4,5));
或者,您也可以利用Java 8流:

Queue<Integer> queue = IntStream.of(1,2,3,4,5)
                                .boxed()
                                .collect(Collectors.toCollection(LinkedList::new));
Queue Queue=IntStream.of(1,2,3,4,5)
.boxed()
.collect(Collectors.toCollection(LinkedList::new));

第一种解决方案可以简化为:Queue Queue=newlinkedlist(Arrays.asList(1,2,3,4,5))@保罗,你说得对。感谢您的评论。第一个解决方案可以简化为:Queue Queue=newlinkedlist(Arrays.asList(1,2,3,4,5))@保罗,你说得对。谢谢你的评论。