2014-01-11 29 views
-3
ArrayList arrayList = new ArrayList(); 
arrayList.add("lee"); 
arrayList.add("lee"); 
arrayList.add("rebok"); 
arrayList.add("rebok"); 

Set set = new LinkedHashSet(arrayList); 

我想要的代码来获得此输出:我想让代码得到这个输出:lee [2],rebok [2];

lee[2],rebok[2]; 
+5

'的System.out.println(” lee [2],锐步[2]“);'......(本网站不是代码”工厂“) – 2014-01-11 10:49:48

+1

我想你正在寻找一个'Map ' –

+1

你有什么问题?顺便说一句,'LinkedList'不能分配给'Set'引用。 –

回答

0

使用guava Multiset计数

final StringBuilder out = new StringBuilder(); 
final Multiset<String> count = HashMultiset.create(arrayList); // your arraylist 
for (final String key : count.elementSet()) { 
    out.append(key).append('[').append(count.count(key)).append("],"); 
} 
// we need to remove a possible trailing comma 
System.out.println(out.length() > 0 ? out.substring(0, out.length() - 1) : ""); 

输出:

lee[2],rebok[2] 
相关问题