java循环map键值对
时间: 2023-09-07 07:15:08 浏览: 172
for循环遍历键值对集合
4星 · 用户满意度95%
在Java中,有多种方法可以循环遍历Map的键值对。
第一种是使用for-each循环,通过调用entrySet()方法获取Map中的键值对集合,并使用for循环遍历该集合。在循环过程中,可以通过调用getKey()和getValue()方法分别获取键和值。例如:
```java
Map<String, Integer> st = new HashMap<>();
st.put("iphone", 10);
st.put("redmi", 100);
st.put("redmik50", 100);
st.put("redmik40", 100);
for (Map.Entry<String, Integer> entry : st.entrySet()) {
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println("key: " + key + " -> value: " + value);
}
```
第二种方法是使用Java 8的lambda表达式,通过调用forEach()方法来遍历Map的键值对。在lambda表达式中,可以使用参数名t和u来表示键和值。例如:
```java
Map<String, Integer> st = new HashMap<>();
st.put("iphone", 10);
st.put("redmi", 100);
st.put("redmik50", 100);
st.put("redmik40", 100);
st.forEach((key, value) -> System.out.println("key: " + key + " -> value: " + value));
```
第三种方法是使用匿名内部类实现BiConsumer接口,通过重写accept()方法来处理键值对。例如:
```java
Map<String, Integer> st = new HashMap<>();
st.put("iphone", 10);
st.put("redmi", 100);
st.put("redmik50", 100);
st.put("redmik40", 100);
st.forEach(new BiConsumer<String, Integer>() {
@Override
public void accept(String key, Integer value) {
System.out.println("key: " + key + " -> value: " + value);
}
});
```
以上是三种常用的循环遍历Map键值对的方法。你可以根据自己的需求选择其中的一种方法来使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Map集合中键值对遍历的三种方式-----java小知识](https://blog.csdn.net/m0_55486529/article/details/123696265)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文