示例数组:[1,2,3,4,4,5,6,7,12,13,7,4]
我只想保留具有多个的值。因此我期望的最终结果是 [4,4,4,7,7]
我可以按如下方式找到重复项。但我怎样才能扭转这个局面呢?任何指导表示赞赏。谢谢。
for (int i = 0; i < names.length; i++) {
for (int j = i + 1; j < names.length; j++) {
if (names[i].equals(names[j]) ) {
// got the duplicate element
}
}
}
最佳答案
您可以在 Groovy 中执行此操作:
def result = names.countBy { it }
.findAll { k, v -> v > 1 }
.collect { k, v -> [k] * v }
.flatten()
或者
def result = names - names.countBy { it }.findAll { k, v -> v == 1 }.keySet()
关于java - 从数组中删除唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43471276/