LongiModuleConstant.TASK_STATUS.CLOSED_LIST.contains(String.valueOf(map.get("orderTaskStatus")))中的contains有办法不区分大小写吗
时间: 2024-11-12 18:46:05 浏览: 22
在这个特定上下文中,`LongiModuleConstant.TASK_STATUS.CLOSED_LIST`看起来像是一个预定义常量列表,它存储的是任务状态,而`.contains(String.valueOf(map.get("orderTaskStatus")))`用于检查给定的订单任务状态是否存在于这个已关闭的任务状态列表中。
由于`contains`方法通常用于集合(如ArrayList、HashSet等),其默认行为通常是区分大小写的。不过,如果`CLOSED_LIST`是基于字符串的,并且你想让它在比较时忽略大小写,你需要先对查询值(`String.valueOf(map.get("orderTaskStatus"))`)和列表中的元素都进行大小写转换。
例如,可以这样修改:
```java
boolean isClosed = CLOSED_LIST.stream()
.map(String::toLowerCase)
.anyMatch(status -> status.equalsIgnoreCase(String.valueOf(map.get("orderTaskStatus").toLowerCase())));
```
这里假设`map.get("orderTaskStatus")`也是一个字符串。
阅读全文