在Java 8中,可以使用流(Stream)和收集器(Collector)来实现按组计数的功能。具体实现步骤如下: 1. 准备数据集合,例如一个包含多个字符串的列表。 List<String> list = Arrays.asList("apple", "banana", "orange", "apple", "orange"); 2. 使用流将数据集合转换为一个包含键值对的流,其中键为字符串,值为出现次数。 Map<String, Long> map = list.stream() .collect(Collectors.groupingBy(Function.identity(), Collectors.counting())); 3. 输出结果。 System.out.println(map); 输出结果为: {orange=2, banana=1, apple=2} 其中,orange出现了2次,banana出现了1次,apple出现了2次。 完整代码如下: import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.function.Function; import java.util.stream.Collectors; public class GroupCountDemo { public static void main(String[] args) { List<String> list = Arrays.asList("apple", "banana", "orange", "apple", "orange"); Map<String, Long> map = list.stream() .collect(Collectors.groupingBy(Function.identity(), Collectors.counting())); System.out.println(map); } }