コード例 #1
0
        static void Main(string[] args)
        {
            new Class1().testKim();
            Console.WriteLine("------------------");
            Student[] sts =                //创建学生数组
            {
                new Student("zhangsan",  90),
                new Student("lisi",     100),
                new Student("wangwu",   189),
                new Student("wanger",    69),
            };
            //创建委托对象mx,关联静态方法student.max
            xnDelegate mx = new xnDelegate(Student.max);

            Student maxst;

            maxst = sts[0];
            sts[0].showInfo();
            //利用fun()方法求成绩最好的学生和成绩最差的学生
            for (int i = 1; i <= sts.Length - 1; i++)
            {
                sts[i].showInfo();
                maxst = fun(maxst, sts[i], mx);
            }
            Console.WriteLine("-------------------------------");
            Console.WriteLine("成绩最好的学生:");
            maxst.showInfo();
            Console.ReadKey();
        }
コード例 #2
0
        static void Main(string[] args)
        {
            // 创建学生对象数组
            student[] sts =
            {
                new student("罗振武",  90),
                new student("蒙舒意", 100),
                new student("李丽",   80),
                new student("周芷",   60),
                new student("王惠",   70),
            };

            // 创建委托对象 mx,关联静态方法 student.max
            xnDelegate mx = new xnDelegate(student.max);

            // 创建委托对象 mn,关联静态方法 student.min
            xnDelegate mn = new xnDelegate(student.min);

            student maxst, minst;

            maxst = minst = sts[0];
            sts[0].showInfo();

            // 利用 fun() 方法求成绩最好的学生和成绩最差的学生
            for (int i = 1; i < sts.Length; i++)
            {
                sts[i].showInfo();
                maxst = fun(maxst, sts[i], mx);
                minst = fun(minst, sts[i], mn);
            }

            Console.WriteLine("-------------------------");
            Console.WriteLine("成绩最好的学生:");
            maxst.showInfo();

            Console.WriteLine("-------------------------");
            Console.WriteLine("成绩最差的学生:");
            minst.showInfo();

            Console.ReadLine();
        }
コード例 #3
0
 //以委托作为参数,定义方法fun(),以求st1和st2中成绩较好的和较差的
 static Student fun(Student st1, Student st2, xnDelegate fxn)
 {
     return((Student)fxn(st1, st2));
 }