static void Main(string[] args) { newDelegate newDelegate = add; newDelegate("asad", 17); Task.Delay(5000).Wait(); Console.WriteLine("----- 5second delayed--"); Console.ReadKey(); }
static void Main(string[] args) { myGenericArray <int> intArray = new myGenericArray <int>(5); for (int i = 0; i < 5; i++) { intArray.SetItem(i, i * 5); } for (int i = 0; i < 5; i++) { Console.WriteLine(intArray.GetItem(i)); } intArray.genericMethod <String>("hello Generic Method"); myGenericArray <char> charArray = new myGenericArray <char>(5); for (int i = 0; i < 5; i++) { charArray.SetItem(i, (char)(i + 97)); } for (int i = 0; i < 5; i++) { Console.WriteLine(charArray.GetItem(i)); } //myGenericArray<string> strArray = new myGenericArray<String>(5); //for (int i = 0; i < 5; i++) //{ // strArray.SetItem(i, "Hello world"+i.ToString()); //} //for (int i = 0; i < 5; i++) //{ // Console.WriteLine(strArray.GetItem(i)); //} int a = 1; int b = 2; swap <int>(ref a, ref b); Console.WriteLine("a:{0},b:{1}", a, b); newDelegate <int> d1 = new newDelegate <int>(mutiply); d1(5); newDelegate <string> d2 = new newDelegate <string>(sayHello); d2("hello Dennis"); Console.WriteLine("num:{0}", num); Console.WriteLine("d2:{0}", str); Console.ReadLine(); }
static void Main(string[] args) { // //新建一个IList<type>类型的集合. IList <string> list = new List <string>() { "Amey", "Emmitt", "Ena", "Epps", "Enid", "Loomis" }; // List<string> list = new List<string>(){"Amey", "Emmitt", "Ena", "Epps", "Enid", "Loomis"}; ////上面两句效果好像是一样的 list.Add("Lorna"); GetHelp.Display2("list", list); //使用lamda表达式筛选 var list1 = list.Where(m => m == "Amey"); GetHelp.Display2("list1", list1); //用匿名委托筛选 var list2 = list.Where(delegate(string s) { if (s == "Amey") { return(true); } else { return(false); } }); GetHelp.Display2("list2", list2); // 使用自定义委托 newDelegate newDelegate1 = new newDelegate(GetHelp.mathName); newDelegate1 += GetHelp.mathName2; var list3 = list.Where(m => newDelegate1(m)); GetHelp.Display2("list3", list3); //预定义委托 Fun<type,bool> Func <string, bool> newFunc2 = GetHelp.mathName; var list4 = list.Where(m => newFunc2(m)); GetHelp.Display2("list4", list4); //xu modify Func <string, bool> newFunc3 = GetHelp.mathName; var list5 = list.Where(GetHelp.mathName); GetHelp.Display2("list5", list5); }
/// <summary> /// CSharpTutorialUtilityEdition(C#教程实用版) /// 1.15.1 delegate 委托 /// 相当于C#中的函数指针; /// </summary> static void Main(string[] args) { MyClass p = new MyClass(); //用new建立委托类MyDelegate对象,d中村中非静态的方法InstanceMethod()的地址 //参数是被委托的方法d(); newDelegate d = new newDelegate(p.InstanceMethod); d(); d = new newDelegate(MyClass.StaticMethod); //参数是被委托的方法 d(); //调用静态方法 }
private void button2_Click(object sender, EventArgs e) { readData = "Connecting to Chat Server ..."; msg(); clientSocket.Connect(txtIP.Text, int.Parse(txtPort.Text)); serverStream = clientSocket.GetStream(); byte[] outStream = System.Text.Encoding.ASCII.GetBytes(txtName.Text + "$"); serverStream.Write(outStream, 0, outStream.Length); serverStream.Flush(); myDelegate = new newDelegate(disconnect); Thread ctThread = new Thread(getMessage); ctThread.IsBackground = true; ctThread.Start(); button2.Enabled = false; }
static void Main(string[] args) { CarQuerries carQuerries = new CarQuerries(); carQuerries.ExecuteQueries(); carQuerries.SaveToXml(); carQuerries.ReadFromXml(); var processList = Process.GetProcesses().ToList(); Console.WriteLine("memory used by processes: " + processList.GetTotalMemory()); Func <int, bool> IsLeapYear = (x) => DateTime.IsLeapYear(x); instance += x => Console.WriteLine("year {0} is {1}", x, IsLeapYear(x) ? "leap" : "not leap"); instance(2019); Console.WriteLine("Is 2019 a leap year? " + IsLeapYear(2019)); MyGenericCollection <Car> carTest = new MyGenericCollection <Car>(); carTest.Add(new Car("Mini") { Sales2014 = 1241, Sales2015 = 1235 }); carTest.Add(new Car("BMW") { Sales2014 = 1241, Sales2015 = 1235 }); carTest.Add(new Car("AAA") { Sales2014 = 1241, Sales2015 = 1235 }); Console.WriteLine("car.Make index 30: " + carTest.Get(30).Make); Console.WriteLine("car.Make index 3: " + carTest.Get(3).Make); Console.WriteLine("is list empty? " + carTest.IsEmpty()); Console.ReadLine(); }