在一个很长的对象List中查找某个属性

问题描述

有一个参数对象List,count大概是几万个,现在要在这些参数里面查找出所有“描述”这条属性中包含“用户”和“推荐”这两个词语的,然后显示。不知道怎么样查找比较好,多谢啦。

解决方案

解决方案二:
最好给出数据结构。估计LINQ可以。
解决方案三:
遍历查找
解决方案四:
我认为重载==运算符比较好
解决方案五:
随便说说,效率好不好不敢保证方案1:把list组合成一个字符串,通过字符串的contains查找方案2:数据源如果是datatable的话,datatable.select的效率也不错
解决方案六:
转换成字符串,使用String.Contains进行检索,可能是比较好的一种方案。或者正则匹配查询
解决方案七:
正则或者linq
解决方案八:
多谢诸位了,还没有开始写代码,之后试试再给反馈,根据各位的指点先试试Linq
解决方案九:
效率吃不准string[]str={"用户","推荐"};List<string>s=newList<string>();s.Add("用户用户用户");s.Add("123推荐3123");s.Add("用户推荐123推荐");s.Add("用12313荐");varq=s.Where(x=>x.Contains(str[0])||x.Contains(str[1])).ToList();

解决方案十:
就你描述的这种,除了循环也没其他办法了不然干嘛会有盘古分词这类的东西

时间: 2024-12-02 04:25:23

在一个很长的对象List中查找某个属性的相关文章

耗时很长的服务器端事件中让客户端得到中间过程信息的更合理的解决方案

耗时很长的服务器端事件中让客户端得到中间过程信息的更合理的解决方案 我认为<耗时很长的服务器端事件中让客户端得到中间过程信息的合理解决方案>一文中的解决方案不合理,属于技术的误用,满篇的ajax这个词很容易给读者造成误导 . 原需求: B/S结构的系统里,用户点一个按钮系统开始发送上千封邮件,要求把发送信息(发送成功数,失败数,剩余数量...)动态实时的反馈给客户. 原文的技术误用之处: (1)ajax,pageload 这些ui层的东东渗透到逻辑层里去了 (2)thread的职责太多 并不是

js中查找对象代码

对象的分类 所谓对象查找,即在一段可执行代码的作用域内,找到一个当前需要的对象.在网页特效中,需要进行查找的对象大致可以分为3种类型: 变量查找,如foo++;,这里就会去查找一个叫作foo的变量. 属性查找,如foo.bar++;,这里会去查找foo这个变量下的一个叫作bar的属性. this查找,即针对this关键字的处理. 区分这3种类型的对象查找是首先要完成的任务,你可以基于以下原则进行判断: 变量仅由变量名组成,即单独的foo.bar等. 属性永远由2种形式去访问,即foo.bar和f

在oracle一个有60万记录的表中删除几十条记录怎么用了很长时间?

oracle 在oracle一个有60万记录的表中删除几十条记录怎么用了很长时间?

急!用jdbc中executeQuery()方法执行查询为什么在程序中停顿很长时间,甚至报错。

问题描述 急!用jdbc中executeQuery()方法执行查询为什么在程序中停顿很长时间,甚至报错. 程序中的sql如以下: select t3.*,t1.costPrice as costP,t1.retailPrice as retailP,t1.basicPricing as basicP from goodsGroupCopy t1 left join groupCopyGoods t2 on t1.id = t2.goodsGroupCopyId left join goods t

mfc中如何在一个cstring变量中查找另一个cstring变量然后删除掉!

问题描述 mfc中如何在一个cstring变量中查找另一个cstring变量然后删除掉! 例如 cstring a; cstring b; 在a中查找b,找到后删除! 求大神指导啊! 解决方案 最简单的 cstring a = "abc"; cstring b = "b"; a = a.replace("b", ""); 解决方案二: CString a="123abc56a"; CString b=&qu

正则表达式例子:在一个字符串中查找另一个字符串

正则|字符串 <html><head><title>正则表达式</title></head><body><a href="./">返回列表</a><br><form action="<?echo $PHP_SELF;?>" method="post">在<input type="text"

C#对很长的字符的操作

问题描述 C#对很长的字符的操作 我有这样一段文字问:我是某某,你好答:明白.问:你的个人简历?答:我叫张三,手机1388888888我只想要'问:'的东西,其它都不要,请问这样改怎么操作???求大神指教 解决方案 我想请问我说的这句话,后面的字符是什么?提问,总要将问题说清楚吧.你问题都不说清楚,别人怎么帮你. 解决方案二: 首先,你这些字符串是如何存贮的?如果是存贮在一个字符串中,可以采用下面的方法:字符串基本操作,先查找"问:",再查找回车换行符,中间的内容就是你想要的. 解决方

怎样很好的将java中的构造重载学好(初学者)

问题描述 怎样很好的将java中的构造重载学好(初学者) 现在初学,但是在写代码的时候总是无法使用构造重载这种方法,并且在写代码的时候老是思绪混乱应该怎莫办??????? 解决方案 java允许在一个类中,多个方法拥有相同的名字,但在名字相同的同时,必须有不同的参数,这就是重载,编译器会根据实际情况挑选出正确的方法,如果编译器找不到匹配的参数或者找出多个可能的匹配就会产生编译时错误,这个过程被称为重载的解析 1 普通方法的重载 普通方法的重载是Java实现多态技术的重要手段,为编程带来了很多便利

ajax异步调用是url后面参数很长带不过去怎么才能带过去

问题描述 ajax异步调用是url后面参数很长带不过去怎么才能带过去 ajax异步调用是url后面参数很长带不过去怎么才能带过去?post,url后面参数太长太长 解决方案 用post方式传值,就不要将参数带在url后边了,将参数放到data中. type: "POST", url: "", data: {}, success: function(msg){ } }); 解决方案二: ajax同步异步详解与回调带参数实例测试 解决方案三: $.post(url,da