Java8 Map<String, Object> map转成Map<String,String>
时间: 2024-10-09 19:16:17 浏览: 38
java 读取csv 并转为Map<String,Object>
在Java 8中,如果你有一个`Map<String, Object>`类型的映射,想要转换为`Map<String, String>`,你可以通过遍历原始映射并检查每个值是否是字符串来实现。如果值是字符串,直接将其添加到新映射中;如果不是,你可以选择抛出异常、忽略非字符串值或者提供一个默认处理策略。
下面是一个简单的示例代码片段:
```java
Map<String, String> stringMap = new HashMap<>();
Map<String, Object> objectMap = ... // 原始对象映射
objectMap.forEach((key, value) -> {
if (value instanceof String) {
stringMap.put(key, (String) value);
} else {
// 这里可以处理非字符串的情况
throw new IllegalArgumentException("Value is not a string for key " + key);
// 或者可以选择忽略:
// continue;
// 或者提供默认值:
// stringMap.put(key, "default_string_value");
}
});
```
这样,你就得到了一个新的只包含字符串键值对的`Map<String, String>`。
阅读全文