首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

c# 泛型跟委托

2012-09-01 
c# 泛型和委托ListT lstnew ListT()ListT llst.FindAll(delegate(T t){return t.name.Contains(

c# 泛型和委托

List<T> lst=new List<T>();
List<T> l=lst.FindAll(delegate(T t){return t.name.Contains("a");});
或使用LINQ

 

 

       private void button1_Click(object sender, EventArgs e)
        {
            List<string> myList= new List<string>();
            for(int i= 0; i< 10; i++)
            {
                myList.Add(i.ToString ());//我给他填充1--10
            }

            if (myList.Find(MathChar)!= null)
            {
                MessageBox.Show("有这个元素");
            }
            else
            {
                MessageBox.Show("没有这个元素");
            }
        }


        privatebool MathChar(string str)
        {

            if (str.Equals("3"))//这里来判断是否有3这个元素
                returntrue;
            else
                returnfalse;
        }

 

 

 

 

 

using System.Collections;
using System.Collections.Generic;
using System.Linq;

var list=new List<string>();
list.Where(x=>{
if(x=="")
{
return true;
}
else
{
return false;……

 

 

 

自定义比较器器c#

 class userinfo
        {
            public string userno;
            public string username;
        }
        class UserComparer<T> : IEqualityComparer<T> where T : userinfo
        {

            #region IEqualityComparer<T> Members

            public bool Equals(T x, T y)
            {
                return x.username == y.username;
            }

            public int GetHashCode(T obj)
            {
                return obj.username.GetHashCode();
            }

            #endregion
        }

            List<userinfo> infos = new List<userinfo>();
            infos.Add(new userinfo() { userno = "001", username = "张某" });
            if (infos.Contains(new userinfo() { username = "张某" }, new UserComparer<userinfo>()))
                MessageBox.Show("找到该用户");

 

热点排行