personList.Exists(t => t.name == "John")
Person temp = personList.Find(t => t.name == "Jack" && t.age > 30 && t.sex == true);
class Person : IComparable<Person> { public string name; public int age; public bool sex; //定义比较方法,按照 age 比较 public int CompareTo(Person other) { if (this.age < other.age) { return -1; } return 1; } } personList.Sort();
class Person : IComparable<Person> { public string name; public int age; public bool sex; //打印对象实例 public override string ToString() { return "name: " + name + ";age: " + age + ";sex: " + sex; } } person.ToString();
完整测试代码
namespace CSharpApp { class Person : IComparable<Person> { public string name; public int age; public bool sex; public Person(string Name, int Age, bool Sex) { this.name = Name; this.age = Age; this.sex = Sex; } //定义比较方法,按照 age 比较 public int CompareTo(Person other) { if (this.age < other.age) { return -1; } return 1; } //打印对象实例的时候使用 public override string ToString() { return "name: " + name + ";age: " + age + ";sex: " + sex; } } class ListTest { static void Main(string[] args) { List<Person> personList; personList = new List<Person>(); //给List赋值 Person p1 = new Person("Mike", 30, true); Person p2 = new Person("John", 20, false); Person p3 = new Person("Jack", 50, true); personList.Add(p1); personList.Add(p2); personList.Add(p3); //List排序 personList.Sort(); if (personList.Exists(t => t.name == "John")) { //如果List中存在 name == John的元素 } //查找 name 等于 Jack、年龄大于30、性别男的元素 Person temp = personList.Find(t => t.name == "Jack" && t.age > 30 && t.sex == true); //打印找到的对象实例 //temp.ToString(); Console.WriteLine(temp.ToString()); //换行输出内容 } } }
Count - List元素数量 Add(T item) - 向List添加对象 AddRange() - 尾部添加实现了 ICollection 接口的多个元素 BinarySearch() - 排序后的List内使用二分查找 Clear() - 移除所有元素 Contains(T item) - 测试元素是否在List内 CopyTo(T[] array) - 把List拷贝到一维数组内 Exists() - 判断存在 Find() - 查找并返回List内的出现的第一个匹配元素 FindAll() - 查找并返回List内的所有匹配元素 GetEnumerator() - 返回一个用于迭代List的枚举器 GetRange() - 拷贝指定范围的元素到新的List内 IndexOf() - 查找并返回每一个匹配元素的索引 Insert() - 在List内插入一个元素 InsertRange() - 在List内插入一组元素 LastIndexOf() - 查找并返回最后一个匹配元素的索引 Remove() - 移除与指定元素匹配的第一个元素 RemoveAt() - 移除指定索引的元素 RemoveRange() - 移除指定范围的元素 Reverse() - 反转List内元素的顺序 Sort() - 对List内的元素进行排序 ToArray() - 把List内的元素拷贝到一个新的数组内 trimToSize() - 将容量设置为List中元素的实际数目