Java list-模糊查询list集合里面的数据

Java集合框架中的模糊查询实现
这篇博客介绍了如何在Java中使用正则表达式进行模糊查询。通过创建一个包含多个用户信息的List集合,博主展示了如何利用Pattern和Matcher类匹配以特定字符串开头的元素,从而筛选出符合条件的数据。示例代码中,博主展示了如何根据'张'这个字符模糊查询到'张大三'和'张小三'这两个用户信息。

模糊查询list集合里面的数据

例如:我有一个集合,里面存了三个名字:张大三,张小三,李老四。现在我想根据参数 “张” 来模糊查询集合里符合条件的数据,也就是 “张大三”,“张小三” 这两条数据,那么应该怎么做呢?
非常简单,上代码:

		//新建一个List空集合,并往里添加三条数据
		List list = new ArrayList();
		//第一条
        UserInfo userInfo = new UserInfo();
        userInfo.setNickName("张大三");
        list.add(userInfo);
        //第二条
        UserInfo userInfo1 = new UserInfo();
        userInfo1.setNickName("张小三");
        list.add(userInfo1);
        //第三条
        UserInfo userInfo2 = new UserInfo();
        userInfo2.setNickName("李老四");
        list.add(userInfo2);
        
        //新建空集合,用来存储查询出来的数据
        List results = new ArrayList();
        //模糊查询 使用(Pattern、Matcher)
        Pattern pattern = Pattern.compile("张");
        for(int i=0; i < list.size(); i++){
            Matcher matcher = pattern.matcher(((UserInfo)list.get(i)).getNickName());
            if(matcher.find()){  //matcher.find()-为模糊查询   matcher.matches()-为精确查询
                results.add(list.get(i));
            }
        }
        //输出结果
        System.out.println(results);

输出的结果为:

[UserInfo (nickName=张大三), UserInfo1(nickName=张小三)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值