List 中多个条件查询


  在项目中,我们都尽量通过各层之间松耦合来降低故障的传递性,使各层除了部分业务有关联性之外,程序运行互不干扰。这时,页面应用和数据库之间的无直接联系的,而是通过后台应用的接口来获取数据,即在结构为List<Map<String, Object> 查询数据,又不想是满屏的if else语句,所以找一个比较好的实现方法,这里记录下。

 1 List<Map<String,Object>> resultList=new ArrayList<>();
 2 
 3 for (Map<String,Object> oneResult: allResultList){
 4     if (!sex.equals("")){
 5         if (!(sex.contains(oneResult.get("sex").toString())))
 6             continue;
 7     }
 8     if (!age.equals("")){
 9         if (!(age.contains(oneResult.get("age").toString())))
10             continue;
11 
12     }
13     if (!adress.equals("")){
14         if (!(adress.equals(oneResult.get("adress").toString())))
15             continue;
16 
17     }
18     if (!weight.equals("")){
19         if (!(weight.equals(oneResult.get("weight").toString())))
20             continue;
21 
22     }
23     resultList.add(oneResult);
24 }
25 return resultList;

先这样,在想好办法


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。