Esempio n. 1
0
        static void Main(string[] args)
        {
            newDelegate newDelegate = add;

            newDelegate("asad", 17);
            Task.Delay(5000).Wait();
            Console.WriteLine("----- 5second delayed--");
            Console.ReadKey();
        }
Esempio n. 2
0
        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();
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        /// <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();                                       //调用静态方法
        }
Esempio n. 5
0
        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;
        }
Esempio n. 6
0
        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();
        }