List<T>模糊查找、排序(非Linq)
2013-01-23 15:11
435 查看
方法一:
用 list<T>.FindAll(delagate <t> match)
list<UserInfo> userlist;
*******
userlist.FindAll(delegate(UserInfo userinfo) {
return userinfo.Username.Contains(txUserName.Text.Trim());
} );
其中userinfo.Username.Contains(txUserName.Text.Trim()) 是搜索条件;
返回一个bool值,如果返回true,这条数据就选出来,如果为false,就丢弃;
要注意delegate(UserInfo
userinfo),注意一下这个匿名函数的参数,和后面的条件,参数userinfo,
条件userinfo.Use.....,这就是他们怎么联系起来的。
userlist.FindAll返回的
的是 List<UserInfo> 类型,就得到查找的数据了。
其中,模糊的部分,就是
Contains(string str), 这是个string 类型方法,返回bool值,
意思是否包含str字符串。
方法二:
如果是查找List<T>中的string项,
可以用string.Contains(string value)方法。
再利用foreach遍历整个list进行查找。
foreach(UserInfo
user in AllUsers){
if(!user.Username.Contains(username))
continue;
userlist.Add(user);
}
排序:
userlist.Sort(delegate(UserInfo
u1,
UserInfo u2) {
return Comparer<string>.Default.Compare(u1.UserName, u2.UserName);
});
用 list<T>.FindAll(delagate <t> match)
list<UserInfo> userlist;
*******
userlist.FindAll(delegate(UserInfo userinfo) {
return userinfo.Username.Contains(txUserName.Text.Trim());
} );
其中userinfo.Username.Contains(txUserName.Text.Trim()) 是搜索条件;
返回一个bool值,如果返回true,这条数据就选出来,如果为false,就丢弃;
要注意delegate(UserInfo
userinfo),注意一下这个匿名函数的参数,和后面的条件,参数userinfo,
条件userinfo.Use.....,这就是他们怎么联系起来的。
userlist.FindAll返回的
的是 List<UserInfo> 类型,就得到查找的数据了。
其中,模糊的部分,就是
Contains(string str), 这是个string 类型方法,返回bool值,
意思是否包含str字符串。
方法二:
如果是查找List<T>中的string项,
可以用string.Contains(string value)方法。
再利用foreach遍历整个list进行查找。
foreach(UserInfo
user in AllUsers){
if(!user.Username.Contains(username))
continue;
userlist.Add(user);
}
排序:
userlist.Sort(delegate(UserInfo
u1,
UserInfo u2) {
return Comparer<string>.Default.Compare(u1.UserName, u2.UserName);
});
相关文章推荐
- List<T>采用delegate快速实现排序、查找等操作
- List<T>采用delegate快速实现排序、查找等操作
- List<T>采用delegate快速实现排序、查找等操作
- 九度:1029<魔咒词典><排序查找>
- List<T>进行多字段排序
- List<T>在搜索和排序时采用不同方法的性能比较
- java list<Map<String,Object>>排序
- 对文件列表List<File>按名称排序
- List<Map>集合根据Map里某个key对List集合重新排序介绍
- List<Object>集合按照Object的某个字段排序,解决取不到父类字段问题
- List<T>集合排序与Dictionary<int,string>排序
- List<T> 排序问题分享
- List<Report> list结果的排序(升序\降序)实现Compare接口
- List&lt;T&gt;的搜索和排序
- 对List<T> 随机排序
- C#中List<T>的排序用法(Sort)
- list中依据map<String,Object>的某个值排序
- LinkedList<E>泛型类的遍历,排序和查找
- Winform中DataGridView绑定List<T>数据源时,点击DataGridView列头不能自动排序解决方法
- List<T>采用delegate快速实现排序、查找等操作