关于集合 clear()方法。不知道什么原因,求大佬帮忙分析下

2021-02-01 20:47:40 +08:00
 cryboy007

前言

本人给朋友写了一个处理天猫获奖的小功能,本质就是分析中将用户并写出 2 个 excel,一个进行模糊化,一个不进行模糊化。

//伪代码
集合.stream().foreach(item -> {
List data;//查数据
write2.writeExcel(data);//未加密
write3.writeExcel(list);//已加密
})

问题来了,当我进行模糊化的时候,data 应该是未加密的,ps:之前使用 1 个多月都没问题。今天下午的时候,朋友跟我说里面有几个加密的文件。然后进行分析,发现是这里报了 xxx,如下所示

java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
***4
^

559 次点击
所在节点    问与答
1 条回复
cryboy007
2021-02-01 20:49:27 +08:00
中间代码如下
```java
/**模糊化*/
List<订单表> list = collect.stream().map(item -> {
try {
item.set 订单编号(item.get 订单编号().replaceFirst(item.get 订单编号().substring(5, 9), "***"));
item.set 买家会员名(item.get 买家会员名().replace(item.get 买家会员名().substring(1,item.get 买家会员名().length()-1),"****"));
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage());
}
return item;
}).collect(toList());
```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/750421

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX