C#使用IComparable时出现排序错误
我花了几个小时试图使用IComparable对ArrayList进行排序 请注意,我无法使用IComparer来执行此操作 代码如下:C#使用IComparable时出现排序错误,c#,sorting,arraylist,icomparable,C#,Sorting,Arraylist,Icomparable,我花了几个小时试图使用IComparable对ArrayList进行排序 请注意,我无法使用IComparer来执行此操作 代码如下: class Pays : IComparable<Pays> { private string nomPays; public string NomPays{get{return nomPays;}set{nomPays = value;}} public int CompareTo(object x) {
class Pays : IComparable<Pays>
{
private string nomPays;
public string NomPays{get{return nomPays;}set{nomPays = value;}}
public int CompareTo(object x)
{
Pays myX = (Pays)x;
return string.Compare(this.nomPays, x.nomPays);
}
}
class TestPays
{
public static ArrayList LireRemplirPays(){ //...blabla
return uneListe;
}
static void Main(string[] args){
ArrayList paysList = LireRemplirPays();
paysList.Sort();
}
}
第二个错误:
return nomPays.CompareTo(myX.nomPays);
您应该使用通用列表而不是
ArrayList
:
class TestPays
{
public static List<Pays> LireRemplirPays() { //...blabla
return uneListe; // Cast here if necessary
}
static void Main(string[] args) {
List<Pays> paysList = LireRemplirPays();
paysList.Sort();
}
}
您应该使用通用列表而不是
ArrayList
:
class TestPays
{
public static List<Pays> LireRemplirPays() { //...blabla
return uneListe; // Cast here if necessary
}
static void Main(string[] args) {
List<Pays> paysList = LireRemplirPays();
paysList.Sort();
}
}
非常感谢你帮助我,非常感谢你帮助我
class TestPays
{
public static List<Pays> LireRemplirPays() { //...blabla
return uneListe; // Cast here if necessary
}
static void Main(string[] args) {
List<Pays> paysList = LireRemplirPays();
paysList.Sort();
}
}
public string Nom { get; set; }