zoukankan      html  css  js  c++  java
  • 委托的使用,排序

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Wrox.ProCSharp.Delegates
    {
      class BubbleSorter
      {
        static public void Sort<T>(IList<T> sortArray, Func<T, T, bool> comparison)
        {
          bool swapped = true;
          do
          {
            swapped = false;
            for (int i = 0; i < sortArray.Count - 1; i++)
            {
              if (comparison(sortArray[i + 1], sortArray[i]))
              {
                T temp = sortArray[i];
                sortArray[i] = sortArray[i + 1];
                sortArray[i + 1] = temp;
                swapped = true;
              }
            }
          } while (swapped);
        }
      }
    }
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Wrox.ProCSharp.Delegates
    {
      class Employee
      {
        public Employee(string name, decimal salary)
        {
          this.Name = name;
          this.Salary = salary;
        }
    
        public string Name { get; private set; }
        public decimal Salary { get; private set; }
    
        public override string ToString()
        {
          return string.Format("{0}, {1:C}", Name, Salary);
        }
    
        public static bool CompareSalary(Employee e1, Employee e2)
        {
          return e1.Salary < e2.Salary;
        }
      }
    
    }
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace Wrox.ProCSharp.Delegates
    {
      class Program
      {
        static void Main()
        {
          Employee[] employees =
          {
            new Employee("Bugs Bunny", 20000),
            new Employee("Elmer Fudd", 10000),
            new Employee("Daffy Duck", 25000),
            new Employee("Wile Coyote", 1000000.38m),
            new Employee("Foghorn Leghorn", 23000),
            new Employee("RoadRunner", 50000)
          };
    
          BubbleSorter.Sort(employees, Employee.CompareSalary);
    
          foreach (var employee in employees)
          {
            Console.WriteLine(employee);
          }
          Console.ReadKey();
        }
      }
    }
    

     

  • 相关阅读:
    哈希及哈希算法
    十四章课后练习题
    第十章课后题----3
    20151015----知识整理
    第十章练习题----2
    加热水杯
    函数
    异常反馈
    20151013知识体系整理,需与20151011相整合
    Java随机输出验证码包含数字、字母、汉字
  • 原文地址:https://www.cnblogs.com/swtool/p/9705737.html
Copyright © 2011-2022 走看看