【发布时间】:2012-04-06 21:48:52
【问题描述】:
这里是初学者。我有一个 String ArrayList,在打印时基本上看起来像这样(但值的变化取决于用户输入):
[22、37、77、77、98、101、104、107、107、107、150]
我想删除重复的元素,并在第一个元素之后的括号中添加出现的总次数,所以它看起来像这样:
[22, 37, 77 (2), 98, 101, 104, 107 (3), 150]
我已经弄清楚如何删除重复的元素,但我无法完全弄清楚其余的。
到目前为止,这是我的代码(ArrayList 称为重复项):
int q, z;
for(q = 0; q < duplicates.size() - 1; q++) {
for(z = q + 1; z < duplicates.size() - 1; z++) {
if(duplicates.get(q).equals(duplicates.get(z))) {
duplicates.remove(q);
}
}
}
System.out.println(duplicates);
结果输出是:
[22、37、77、98、101、104、107、150]
有没有人对我如何获得括号中的出现次数有任何建议?我一直在努力想出一种方法来计算每个值删除的重复项,但我所能计算的只是删除期间的重复项总数,这并不是特别有用。
ArrayList 最初是一个 Integer ArrayList,但我将其更改为 String ArrayList,以便可以将非数字字符添加到元素中。
【问题讨论】:
标签: java arraylist duplicates