使用stearm流截取list<map>对象里的属性的第一个字符怎么写 [{year=1一}, {year=2二}, {year=3三}]我的值是这样,我想把year的属性值数字都给去掉
时间: 2024-04-07 15:33:06 浏览: 143
要截取`List<Map<String, Object>>`对象里的`year`属性的第一个字符,并去掉数字,可以使用Stream的map操作来修改每个Map对象的属性值。以下是一个示例代码:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
List<Map<String, Object>> list = new ArrayList<>();
// 假设list中已经有了一些Map对象
HashMap<String, Object> stringObjectHashMap = new HashMap<>();
HashMap<String, Object> stringObjectHashMap1 = new HashMap<>();
HashMap<String, Object> stringObjectHashMap2 = new HashMap<>();
stringObjectHashMap.put("year", "1一");
stringObjectHashMap1.put("year", "2二");
stringObjectHashMap2.put("year", "3三");
list.add(stringObjectHashMap);
list.add(stringObjectHashMap1);
list.add(stringObjectHashMap2);
List<Map<String, Object>> modifiedList = list.stream()
.map(map -> {
String year = (String) map.get("year");
// 截取字符串,去掉数字部分
String modifiedYear = year.substring(1);
map.put("year", modifiedYear);
return map;
})
.collect(Collectors.toList());
System.out.println(modifiedList);
}
}
```
这段代码将会输出 `[{year=一}, {year=二}, {year=三}]`,表示将每个Map对象的`year`属性值的数字部分去掉了。
阅读全文
相关推荐
















