java 遍历Map<String,Object> 取出所有key和value
时间: 2023-05-19 14:07:08 浏览: 306
可以使用以下代码遍历Map<String,Object>并取出所有key和value:
```
Map<String, Object> map = new HashMap<>();
// 添加键值对
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
// 遍历Map并取出所有key和value
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
System.out.println("Key: " + key + ", Value: " + value);
}
```
这段代码会输出以下结果:
```
Key: key1, Value: value1
Key: key2, Value: value2
Key: key3, Value: value3
```
相关问题
java遍历map<String,Object> map 将key值小写
以下是遍历map将key值小写的示例代码,使用了Java 8的Lambda表达式和Stream API:
```java
import java.util.HashMap;
import java.util.Map;
public class MapKeyToLowercase {
public static void main(String[] args) {
Map<String, Object> map = new HashMap<>();
map.put("A", 1);
map.put("B", "hello");
map.put("C", true);
// 将map的key值转换为小写
Map<String, Object> newMap = map.entrySet().stream()
.collect(HashMap::new, (m, e) -> m.put(e.getKey().toLowerCase(), e.getValue()), Map::putAll);
// 遍历打印map
newMap.forEach((key, value) -> System.out.println(key + ": " + value));
}
}
```
输出结果为:
```
a: 1
b: hello
c: true
```
遍历Map<String,Map<String,Object>>
遍历Map<String,Map<String,Object>>可以使用Java中的for-each循环和Map的entrySet()方法。具体步骤如下:
1. 使用entrySet()方法获取Map中每个键值对的映射关系。
2. 遍历entrySet()返回的Set集合,对于每个映射关系,获取键和值。
3. 对于值为Map<String,Object>类型的键值对,可以使用递归方式遍历内部的Map。
示例代码如下:
```
Map<String, Map<String, Object>> map = new HashMap<>();
// 添加键值对
for (Map.Entry<String, Map<String, Object>> entry : map.entrySet()) {
String key = entry.getKey();
Map<String, Object> valueMap = entry.getValue(); // 遍历内部Map
for (Map.Entry<String, Object> valueEntry : valueMap.entrySet()) {
String innerKey = valueEntry.getKey();
Object innerValue = valueEntry.getValue();
// 处理内部Map的键值对
}
}
```
阅读全文