Bud*_*Kis 1 java lambda java-8
我想将map {key:column,key1:column1}转换为csv字符串"key = column,key1 = column".
我正在获取入口映射并从键和值构造字符串.这就是我所拥有的:
entry.forEach(entryVal ->{
result.append(entryVal.getKey() + "=" + entryVal.getValue());
result.append(',');
});
int index = result.lastIndexOf(",");
if(index == result.length()-1){
result.deleteCharAt(index);
return result.toString();
}
Run Code Online (Sandbox Code Playgroud)
当然,看起来很难看,特别是我必须对逗号进行后处理.想知道是否有更清洁的方法吗?
注意:我不需要代码审查,只需要知道一种不同但更清晰的方式来编写同样的东西,如果可能的话
这可以使用joining收集器完成:
String str = map.entrySet().stream().map(e -> e.getKey() + "=" + e.getValue())
.collect(Collectors.joining(","));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2104 次 |
| 最近记录: |