Stream 实现遍历搜索功能
请看如下代码实现
public static List<Map<String, Object>> Query(List<Map<String, Object>> list,String string1){ //模拟得到数据 Stream<Map<String, Object>> stream = list.stream(); List<Map<String, Object>> collect = stream.filter((x) -> { boolean b = false; //遍历map for(Entry<String, Object> m:x.entrySet()){ if(null==m.getValue()){ }else{ b=m.getValue().toString().indexOf(string1)>=0; if(b)return b; } } return b; }).map((x) -> { return x; }).collect(Collectors.toList()); return collect; }
以上代码传入的是一个List<Map<String, Object>>
如果返回的b为true,那么就会返回这个Map,这个Map仍然是保存在了List中
因为我们只需要把查找的条件写在return b的上面即可
爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情