C# List中FindAll用法的一些简单示例
如下所示:
using system;
using system.collections.generic;
public partial class list : system.web.ui.page
{
protected void page_load(object sender, eventargs e)
{
createlist();
}
private void createlist()
{
list<string> list = new list<string>();
list.add("compsognathus");
list.add("amargasaurus");
list.add("oviraptor");
list.add("velociraptor");
list.add("deinonychus");
list.add("dilophosaurus");
list.add("gallimimus");
list.add("triceratops");
//循环输出每一项
response.write("分别输出每一项:");
foreach (string str in list)
{
response.write(str + ";");
}
//查找字符串中包含saurus的字符,利用了匿名方法(第一种方式)
list<string> listfind = list.findall(delegate(string s){
return s.contains("saurus");
});
response.write("查找到的字符串为:");
foreach (string str in listfind)
{
response.write(str+" ;");
}
//第二种方式,这两种方式实际上是等价的
response.write("</br>findall(endwithsaurus):");
list<string> sublist = list.findall(endwithsaurus);//传入了一个方法名
foreach (string str in sublist)
{
response.write(str+" ;");
}
}
private bool endwithsaurus(string s)
{
if ((s.length > 5) && (s.substring(s.length - 6).tolower() == "saurus"))
return true;
else
return false;
}
}