从迭代器中删除数组中的元素的最佳方法是什么?

我有一个数组和一个迭代器。两者都是相同的类型,比如说整数,我想从迭代器中删除数组中的值。例如:

我的迭代器: 1, 2, 3, 4, 5, 6

我的阵列: 2, 5

然后 2 和 5 将从迭代器中删除。我该怎么做?

编辑:对编程不太了解的人放弃了投票,哈哈。


翻过高山走不出你
浏览 166回答 2
2回答

ITMISS

我会使用 - 就像在许多其他可用语言中一样 - 过滤器。在公共集合中已经有一个FilterIterator。有了它,您可以过滤不需要的元素并使用通过过滤器的元素。final List<Integer> values = Arrays.asList(2,5);Iterator<Integer> filteredIterator = new FilterIterator(yourIterator, new Predicate<Integer>() {&nbsp; &nbsp; public boolean evaluate(Integer object) {&nbsp; &nbsp; &nbsp; &nbsp; return values.contains(object);&nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;});

qq_花开花谢_0

也许不是最有效的答案,但我会用 for 循环来解决它并遍历你的数组。然后对于数组中的每个元素,运行迭代器直到获得匹配项,然后调用 iterator.remove() 函数。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java