定义一个泛型为String类型的List集合, 统计该集合中每个字符(注意,不是字符串)出现的次数(结果建议放在一个Map集合中)。例如:集合中有”abc”、”bcd”两个元素,程序最终输出结果为:“a = 1,b = 2,c = 2,d = 1”
时间: 2024-10-18 13:10:12 浏览: 21
首先,你需要创建一个泛型为String类型的List集合,然后遍历这个列表,对于每一个元素,再遍历其字符。你可以使用Java的HashMap来存储每个字符及其出现的次数。以下是实现这个功能的一个示例:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class CharacterCount {
public static void main(String[] args) {
// 创建一个包含字符串的List
List<String> stringList = new ArrayList<>();
stringList.add("abc");
stringList.add("bcd");
// 使用HashMap来存储字符和它们的计数
Map<Character, Integer> charCountMap = new HashMap<>();
// 遍历字符串列表并统计字符
for (String str : stringList) {
for (char c : str.toCharArray()) { // 转换为字符数组以便遍历
charCountMap.putIfAbsent(c, 0); // 如果字符不存在,则添加并设置初始计数为0
charCountMap.put(c, charCountMap.get(c) + 1); // 否则增加计数
}
}
// 打印结果
for (Map.Entry<Character, Integer> entry : charCountMap.entrySet()) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}
}
```
当你运行这个程序,它将输出每个字符及其出现的次数。注意,这种方法假设输入的都是单字节字符。如果处理的是Unicode或其他非ASCII字符,可能会有额外的复杂性。
阅读全文