Pen*_*uen 0 .net c# visual-studio-2008 visual-studio
我怎么能根据int值在arraylist下面.但是,如果您编译下面的代码错误:无效的操作异常...详细信息:无法比较数组中的两个元素.
namespace SortArray
{
class Program
{
static void Main(string[] args)
{
ArrayList otomobil = new ArrayList();
otomobil.Add(new Otomobil() { Model = 2000, Marka = "mercedes", Renk = "K?rm?z?" });
otomobil.Add(new Otomobil() { Model = 2002, Marka = "Opel", Renk = "Ye?il" });
otomobil.Add(new Otomobil() { Model = 2009, Marka = "Audi", Renk = "Mavi" });
otomobil.Sort();
for (int i = 0; i < otomobil.Count; i++)
{
Console.WriteLine(otomobil[i].ToString());
}
}
}
public class Otomobil
{
public string Marka { get; set; }
public int Model { get; set; }
public string Renk { get; set; }
public Otomobil()
{
}
public override string ToString()
{
return Marka + "(" + Model.ToString() + "-" + Renk + ")";
}
public int CompareTo(object obj)
{
if (obj == null)
return 1;
Otomobil outer = obj as Otomobil;
if (outer == null)
throw new ArgumentException();
if (this.Model > outer.Model)
return 1;
else if (this.Model < outer.Model)
return -1;
else return 0;
}
}
}Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
832 次 |
| 最近记录: |