可重复set和map,便于计数
| 可变集合接口 | 属于JDK还是Guava | 不可变版本 |
| Collection | JDK | ImmutableCollection |
| List | JDK | ImmutableList |
| Set | JDK | ImmutableSet |
| SortedSet/NavigableSet | JDK | ImmutableSortedSet |
| Map | JDK | ImmutableMap |
| SortedMap | JDK | ImmutableSortedMap |
| Multiset | Guava | ImmutableMultiset |
| SortedMultiset | Guava | ImmutableSortedMultiset |
| Multimap | Guava | ImmutableMultimap |
| ListMultimap | Guava | ImmutableListMultimap |
| SetMultimap | Guava | ImmutableSetMultimap |
| BiMap | Guava | ImmutableBiMap |
| ClassToInstanceMap | Guava | ImmutableClassToInstanceMap |
| Table | Guava | ImmutableTable |
Multiset<String> m = HashMultiset.create(); m.add("a"); m.add("a"); m.add("a"); m.add("b"); m.add("b"); m.add("c"); m.add("d",5); Set<String> set = m.elementSet(); Set<Multiset.Entry<String>> entrys = m.entrySet(); System.out.println(set); entrys.forEach(entry-> System.out.println(entry.getElement()+"-->"+entry.getCount())); m.remove("a"); System.out.println("a-->"+m.count("a")); m.setCount("a",100); System.out.println("a-->"+m.count("a")); m.setCount("a",10,1); System.out.println("a-->"+m.count("a")); m.setCount("a",100,1); System.out.println("a-->"+m.count("a"));
结果:
[a, b, c, d]
a-->3
b-->2
c-->1
d-->5
a-->2
a-->100
a-->100
a-->1
本文通过具体示例介绍了 Java 中 Guava 库提供的 Multiset 接口的使用方法,包括如何创建 Multiset、添加元素、获取元素集及条目集、打印元素频率等操作,并展示了如何调整元素计数。
841

被折叠的 条评论
为什么被折叠?



