直接上代码
//通过方法从数据库获得对象PrepareLessons的list集合
List<PrepareLessons> prepareLessonsList1=prepareLessonsService.queryPrepareLessonsList(prepareLessons);
//新建一个list集合
List prepareLessonsList = new ArrayList();
//name是模糊查询的关键字,一般是动态传递到后端,项目测试我直接先写死了
String name="外军";
Pattern pattern = Pattern.compile(name);
for(int i=0; i < prepareLessonsList1.size(); i++){
//那个属性搜索就get哪个属性
Matcher matcher = pattern.matcher(((PrepareLessons)prepareLessonsList1.get(i)).getSubjectLinkName());
//模糊查询用matcher.find()
if(matcher.find()){
prepareLessonsList.add(prepareLessonsList1.get(i));
}
}
System.out.println(prepareLessonsList);
这就是利用list 集合做模糊查询得到新的list集合
Pattern pattern = Pattern.compile(name);是区分大小的,
Pattern pattern = Pattern.compile(name,Pattern.CASE_INSENSITIVE);是不区分大小写的。
matcher.matches()是做精确查询的。
个人觉的这个方法挺好用的。