Stream 实现遍历搜索功能

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/天,具体规则查看活动详情Blog Img