假设我有两个ArrayList对象。用户将输入一些字母,但在这个例子中,我只是将一些字母硬编码到一个ArrayList以使生活更轻松。这似乎是一个简单的问题,但我很困惑它!将重复值从一个ArrayList移动到另一个ArrayList(Java)
ArrayList<String> letters = new ArrayList<String>();
ArrayList<String> duplicateLetters = new ArrayList<String>();
letters.add("z");
letters.add("a");
letters.add("z");
letters.add("z");
letters.add("b");
我的目的,是从该ArrayList letters
删除重复的,所以它最终将只包含["z"], ["a"] and ["b"]
。
但是,我希望ArrayList duplicateLetters
存储任何多次输入的字母。因为"z"
被复制了两次,所以在此示例中,我希望复本信息包含["z"]
和["z"]
。
如果可能的话,我也想跟踪每个字母被复制的次数。
我已经尝试过使用HashSet,它在删除列表中的重复项时非常有效地工作(请参阅此问题:How do I remove repeated elements from ArrayList?)。但是,集只是简单地忽略重复,在这种情况下,我想跟踪它们。
我在求求意见! :/
虽然duplicateLetters将不包含“Z”两次这里,只有一次。 – rednaxela