ArrayList中有一个Sort()方法,它可以实现对集合的排序。但是集合中的类型必须要实现IComparable接口,因为排序需要类型的比较方法CompareTo(),参数为该类型的一个对象。
所以我们自己写的一个类,想要使用这个Sort()方法,必须实现这个IComparable()接口。CompareTo()方法的返回值是int类型的,如果大于1,就说明前者比后者大,如果为0,说明两者相等,如果小于0,说明后者大。
这个实现方法,改变了类本身。
using System;
using System.Collections;
namespace Simple
{
public class MainEntryPoint
{
static int Main(string[] args)
{
ArrayList temps = new ArrayList();
Random rm = new Random();
for(int i = 0; i < 10; i++)
{
double x = rm.Next(0,100);
Temperature y = new Temperature();
y.Fahrenheit = x;
temps.Add(y);
}
temps.Sort();
foreach(Temperature i in temps)
{
Console.WriteLine(i.Fahrenheit);
}
return 0;
}
}
public class Temperature : IComparable
{