如何在Java中复制除1个键以外的键值列表?
在Java中,我有一个key:value对primaryList的列表,现在我想复制除了primaryListExceptDate中的一个键日期之外的完整列表。有人能帮我吗?我知道我们可以用for循环来完成,但我想知道还有其他有效的方法吗
你可以在下面搜索框中键入要查询的问题!
在Java中,我有一个key:value对primaryList的列表,现在我想复制除了primaryListExceptDate中的一个键日期之外的完整列表。有人能帮我吗?我知道我们可以用for循环来完成,但我想知道还有其他有效的方法吗
# 1 楼答案
我不知道它是否更有效,但您可以先复制列表,然后使用迭代器对其进行迭代,并删除键为“date”的条目
编辑:类似这样的内容:
# 2 楼答案
尝试使用foreach构造将数据复制到另一个列表中,并使用if来排除您不感兴趣的对象。您可能认为这不是一种有效的方法,但API提供的大多数方法都具有O(n)复杂性。 我认为这是最简单的方法。您还可以使用List-property方法来复制列表,然后删除对象,但如果您考虑性能,这可能会有点麻烦
无论如何,我建议您使用Map Collection:当使用键:值对时,它会帮助您,而且非常有效!在这种情况下,列表是无用的
# 3 楼答案
据我所知,您有一个
Record
对象的列表,这些对象将值对保留为key,value然后您可以使用
Stream
api来做您想要做的事情。比如:这将为您提供一个新列表,其中没有带有该不需要的日期的
Record
更新:您要求提供一个
Vector
示例我做了这个测试,效果很好,d2被移除了
Vector
实现了List
,因此可以强制转换它Collectors
没有toVector
方法,因为Vector
已过时: