学习-Java集合类之Map的HashMap之单词中各字母出现的次数
时间: 2023-07-16 19:13:17 浏览: 90
首先,我们需要先了解HashMap的基本用法和特点,以及如何遍历Map。
HashMap是Java中常用的一种Map实现,它是基于哈希表实现的,可以用来存储键值对。HashMap中的键和值都可以是任何类型的对象,但是键不能重复,值可以重复。
遍历HashMap可以使用for循环和Iterator迭代器两种方式,具体实现可以参考以下代码:
```java
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class HashMapExample {
public static void main(String[] args) {
// 创建一个HashMap对象
Map<String, Integer> map = new HashMap<>();
// 往HashMap中添加键值对
map.put("a", 1);
map.put("b", 2);
map.put("c", 3);
// 使用for循环遍历HashMap
for (String key : map.keySet()) {
System.out.println(key + ": " + map.get(key));
}
// 使用Iterator迭代器遍历HashMap
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
```
接下来,我们可以通过HashMap来统计单词中各字母出现的次数。具体实现可以参考以下代码:
```java
import java.util.HashMap;
import java.util.Map;
public class WordCount {
public static void main(String[] args) {
String word = "hello world";
Map<Character, Integer> map = new HashMap<>();
for (int i = 0; i < word.length(); i++) {
char c = word.charAt(i);
if (map.containsKey(c)) {
map.put(c, map.get(c) + 1);
} else {
map.put(c, 1);
}
}
for (char key : map.keySet()) {
System.out.println(key + ": " + map.get(key));
}
}
}
```
运行结果如下:
```
h: 1
e: 1
l: 3
o: 2
: 1
w: 1
r: 1
d: 1
```
阅读全文