总目录
C# 语法总目录
集合六 Collection
- [1. 自定义集合Collection](#1. 自定义集合Collection)
- 其他
1. 自定义集合Collection
Collection可以对添加删除元素或者添加删除属性进行事件响应。
csharp
class Person
{
public string name;
public int age;
public Person()
{
this.name = "";
this.age = 0;
}
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
public override string ToString()
{
return this.name + "," + this.age;
}
}
csharp
class PersonCollection : Collection<Person>
{
protected override void InsertItem(int index, Person item)
{
base.InsertItem(index, item);
Console.WriteLine("insert ele: index id {0},item is {1}",index,item.ToString());
}
protected override void SetItem(int index, Person item)
{
base.SetItem(index, item);
Console.WriteLine("set ele: index id {0},item is {1}", index, item.ToString());
}
protected override void RemoveItem(int index)
{
base.RemoveItem(index);
Console.WriteLine("remove ele: index id {0}", index);
}
protected override void ClearItems()
{
base.ClearItems();
Console.WriteLine("collect is clear");
}
}
csharp
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
PersonCollection people = new PersonCollection();
people.Add(new Person());
people.Insert(0, new Person("lisi", 50));
people[1] = new Person("anger", 19);
people.RemoveAt(1);
foreach (var item in people)
{
Console.WriteLine(item.ToString());
}
}
}
其他
方法:string.Compare
csharp
string str1 = "help";
string str2 = "Help";
string str3 = "help";
int res = string.Compare(str1, str2);
int res1 = string.Compare(str1, str3);
Console.WriteLine(res); //-1
Console.WriteLine(res1); //0
总目录
C# 语法总目录