假设我有两个 ArrayList 对象。用户将输入一些字母,但在本例中,我只是将一些字母硬编码到 ArrayList 中以使生活更轻松。这似乎是一个简单的问题,但我对此感到非常困惑!
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"]
.
但是,我希望 ArrayListduplicateLetters
存储多次输入的任何字母。因为"z"
被复制了两次,所以我希望 duplicateLetters 包含["z"]
and ["z"]
在这个例子中。
如果可能的话,我还想跟踪每个字母被重复的次数。
我已经尝试过使用 HashSet ,它在删除列表中的重复项时非常有效(请参阅这个问题:如何从 ArrayList 中删除重复的元素?)。但是,Sets 只是简单地忽略重复项,在这种情况下,我想跟踪它们。
我在乞求想法!:/