【发布时间】:2021-01-15 05:25:03
【问题描述】:
假设我有一个 Map 列表,例如: (使用json格式只是为了演示)
List<Map> myList = [
{
"id": 12,
"name": "Harie"
},
{
"id": "Forty",
"location": "Earth"
},
{
"name": "Potah"
},
{
"id": "0"
}
]
现在我想要一个字符串对象中的所有“id”值,用分隔符分隔。 比如上面的地图应该给我:
"12#Forty#0"
注意: 必须保持它们在列表中的索引顺序。 我知道我可以这样做:
StringBuilder result = new StringBuilder();
for (Map map : myList) {
if (map.get("id") instanceof String) {
if(result.length()>0){
result.append('#');
}
result.append(map.get("id"));
}
}
//Use result.toString() for output
但我想要更易读和更简化的代码,最好使用 Java 流 api。
【问题讨论】:
标签: java java-stream java-11