# 统计List中的元素重复出现的次数

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class CountDuplicatedList {

  public static void main(String[] args) {

	List list = new ArrayList();

System.out.println("\n例子 1 -统计'a'出现的频率");
System.out.println("a : " + Collections.frequency(list, "a"));

System.out.println("\n例子 2 - 统计每一个元素出现的频率");
//将List转换为Set
Set uniqueSet = new HashSet(list);
for (String temp : uniqueSet) {
System.out.println(temp + ": " + Collections.frequency(list, temp));
}

System.out.println("\n例子 3 - 用Map统计每个元素出现的频率");
Map map = new HashMap();

for (String temp : list) {
Integer count = map.get(temp);
map.put(temp, (count == null) ? 1 : count + 1);
}
printMap(map);

System.out.println("\nSorted Map");
Map treeMap = new TreeMap(map);
printMap(treeMap);

}

public static void printMap(Map map){

for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}

	list.add("a");
	list.add("b");
	list.add("c");
	list.add("d");
	list.add("b");
	list.add("c");
	list.add("a");
	list.add("a");
	list.add("a");

	System.out.println("\n例子 1 -统计'a'出现的频率");
	System.out.println("a : " + Collections.frequency(list, "a"));

	System.out.println("\n例子 2 - 统计每一个元素出现的频率");
	//将List转换为Set
	Set uniqueSet = new HashSet(list);
for (String temp : uniqueSet) {
System.out.println(temp + ": " + Collections.frequency(list, temp));
}

System.out.println("\n例子 3 - 用Map统计每个元素出现的频率");
Map map = new HashMap();

for (String temp : list) {
Integer count = map.get(temp);
map.put(temp, (count == null) ? 1 : count + 1);
}
printMap(map);

System.out.println("\nSorted Map");
Map treeMap = new TreeMap(map);
printMap(treeMap);

}

public static void printMap(Map map){

for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}

	for (String temp : uniqueSet) {
		System.out.println(temp + ": " + Collections.frequency(list, temp));
	}

	System.out.println("\n例子 3 - 用Map统计每个元素出现的频率");
	Map map = new HashMap();

for (String temp : list) {
Integer count = map.get(temp);
map.put(temp, (count == null) ? 1 : count + 1);
}
printMap(map);

System.out.println("\nSorted Map");
Map treeMap = new TreeMap(map);
printMap(treeMap);

}

public static void printMap(Map map){

for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}


	for (String temp : list) {
		Integer count = map.get(temp);
		map.put(temp, (count == null) ? 1 : count + 1);
	}
	printMap(map);

	System.out.println("\nSorted Map");
	Map treeMap = new TreeMap(map);
printMap(treeMap);

}

public static void printMap(Map map){

for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}

	printMap(treeMap);

  }

  public static void printMap(Map map){

for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}


	for (Map.Entry entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}

}

}

		System.out.println("Key : " + entry.getKey() + " Value : "
			+ entry.getValue());
	}

  }

}

例子 1 -统计'a'出现的频率
a : 4

例子 2 - 统计每一个元素出现的频率
d: 1
b: 2
c: 2
a: 4

例子 3 - 用Map统计每个元素出现的频率
Key : d Value : 1
Key : b Value : 2
Key : c Value : 2
Key : a Value : 4

Sorted Map
Key : a Value : 4
Key : b Value : 2
Key : c Value : 2
Key : d Value : 1

• 本文已收录于以下专栏：

## Python3 Counter类计算list中元素出现次数

Python3 Counter类计算list中元素出现次数

## list集合统计元素出现的次数

1，生成20个随机数插入到集合中 // 15~50 List list = new ArrayList(); for (int i = 1; i list.add((int) (Math.rando...

## java 求一个list集合中出现次数最多的一项，和此项的出现次数

//java 求一个list集合中出现次数最多的一项，和此项的出现次数 //效率很高的统计方法。利用正则表达式统计 @Test public void st() { String re...

## Python统计列表中元素出现的次数

Python列表可以进行简单的统计，比如list的函数count()可以直接统计元素出现的次数。 mylist = [2,2,2,2,2,2,3,3,3,3] myset = set(my...

## 去除List集合中的重复值（四种好用的方法）

**如何去除List集合中的重复值？** 最近项目中需要对list集合中的重复值进行处理，大部分是采用两种方法，一种是用迭代list集合判断后赋给另一个list集合，一种是用赋给set集合再...
• cs6704
• 2015-12-03 11:28
• 37229

## List不添加重复元素

public static void main(String[] args) { Set set = new HashSet(); set.add(1L); set.add(1...

## 数组元素出现次数统计

《c语言学习笔记》关于整型随机数组中各个元素出现次数的统计（直方图）#include #include #define N 20int a[N];void gen_random(int floor) ...

## 元素出现次数统计

举报原因： 您举报文章：深度学习：神经网络中的前向传播和反向传播算法推导 色情 政治 抄袭 广告 招聘 骂人 其他 (最多只允许输入30个字)