zoukankan      html  css  js  c++  java
  • C#实现Comparable接口实现排序

    C#中,实现排序的方法有两种,即实现Comparable或Comparer接口,下面简单介绍实现Comparable接口实现排序功能。

    实现Comparable接口需要实现CompareTo(object obj)方法,所以简单实现这个方法就可以很方便的调用其排序功能。

    以Student的score为例,进行排序:

    具体代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplicationtest
    {
        class Program
        {
            public class Student:IComparable
            {
                int _socre;
                string _name;
                public int score
                {
                    set { _socre = value; }
                    get { return _socre; }
                }
    
                public string name
                {
                    set { _name = value; }
                    get { return _name; }
                }
    
                public void Display()
                {
                    Console.WriteLine("姓名:{0}	分数:{1}",_name,_socre);
                }
    
                public int CompareTo(object obj)//实现接口
                {
                    Student stu = (Student)obj;
                    return this._socre - stu._socre;
                }
            }
            static void Main(string[] args)
            {
                List<Student> stuList = new List<Student>();
                stuList.Add(new Student() { score = 98, name = "Bob" });
                stuList.Add(new Student() { score = 56, name = "Alice" });
                stuList.Add(new Student() { score = 100, name = "Jerry" });
                Console.WriteLine("排序前:");
                foreach (Student mystu in stuList)
                {
                    mystu.Display();
                }
                stuList.Sort();
                Console.WriteLine("
    排序后:");
                foreach (Student mystu in stuList)
                {
                    mystu.Display();
                }
                Console.ReadKey();
            }
        }
    }



  • 相关阅读:
    团队展示&选题
    结对编程(JAVA实现)
    wc项目(node.js实现)
    复审与事后分析
    事后诸葛亮分析报告
    Alpha阶段项目复审
    测试与发布
    Scrum 冲刺第五篇
    Scrum 冲刺第一篇
    项目冲刺
  • 原文地址:https://www.cnblogs.com/james1207/p/3362378.html
Copyright © 2011-2022 走看看