java 计算一个集合 对象包含相同的元素数量
时间: 2024-03-06 08:48:57 浏览: 75
可以使用 Java 8 的流(Stream)API 来计算一个集合对象包含相同元素的数量。具体步骤如下:
1. 将集合转换为流;
2. 使用 `Collectors.groupingBy()` 方法将元素按照相同的值进行分组;
3. 使用 `Collectors.counting()` 方法统计每个分组中元素的数量;
4. 将统计结果收集到一个 `Map` 对象中;
5. 使用 `Map.values()` 方法获取所有分组的数量。
下面是一个示例代码:
```java
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> list = Arrays.asList("a", "b", "c", "a", "b", "d");
Map<String, Long> counts = list.stream()
.collect(Collectors.groupingBy(e -> e, Collectors.counting()));
System.out.println(counts.values());
}
}
```
运行结果为:
```
[2, 2, 1, 1]
```
其中,`[2, 2, 1, 1]` 表示有 2 个元素出现了 2 次,2 个元素出现了 1 次。
阅读全文