例如我的列表包含{4,6,6,7,7,8},并且我希望最终结果= {6,6,7,7}如何从java中的列表中选择重复值?
一种方法是循环遍历列表并消除唯一值(在这种情况下为4,8)。
是否有任何其他有效的方法,而不是通过列表循环?我问这个问题是因为我工作的列表非常大? 我的代码是
List<Long> duplicate = new ArrayList();
for (int i = 0; i < list.size(); i++) {
Long item = (Long) list.get(i);
if (!duplicate.contains(item)) {
duplicate.add(item);
}
}
您将通过整个列表必须循环,至少进行一次:
像这样的东西可以模拟多集。如果您必须比较列表中的每个值,才能更有效地解决列表创建问题,那么使用列表就没有“更高效”的方法。 –
您至少需要一个循环。如果你想要一个更高效的代码(不是所有情况下都能保证),你可以尝试先排列列表,然后检查“邻居”是否不同(如果是,你有一个独特的项目,只需从列表中删除) – morgano
如果你不想循环播放,你总是可以打印出列表并整理重复。 – Tdorno