java – 如何从Queue获取特定元素?
发布时间:2020-12-15 05:11:24 所属栏目:Java 来源:网络整理
导读:与ArrayList不同,Queue中没有get(int index)方法来检索指定位置的元素. 有人请告诉我如何在队列中实现这一目标? 谢谢. 解决方法 您可以从队列中删除元素,直到找到所需的元素.您可以在队列末尾重新添加已删除的元素,或将它们放在不同的队列中(并在到达所需元
与ArrayList不同,Queue中没有get(int index)方法来检索指定位置的元素.
有人请告诉我如何在队列中实现这一目标? 谢谢. 解决方法
您可以从队列中删除元素,直到找到所需的元素.您可以在队列末尾重新添加已删除的元素,或将它们放在不同的队列中(并在到达所需元素后添加其余元素).
不过,你真的不应该使用这样的队列! public static <T> T get(Queue<T> queue,int index) { synchronized (queue) { if (queue == null) { return null; } int size = queue.size(); if (index < 0 || size < index + 1) { return null; } T element = null; for (int i = 0; i < size; i++) { if (i == index) { element = queue.remove(); } else { queue.add(queue.remove()); } } return element; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |