ArrayList.Sort() で IComparer を使用して、文字列のグループを int として並べ替える方法はありますか?
3628 次
3 に答える
10
それらがすべて文字列の場合、なぜ ArrayList を使用しているのですか? .Net 2.0 以降を使用している場合 List<string>
は、はるかに優れた選択です。
.Net 3.5 以降を使用している場合:
var result = MyList.OrderBy(o => int.Parse(o.ToString() ) ).ToList();
于 2009-07-24T17:33:14.477 に答える
6
もちろん。変換を行う適切な比較子を作成するだけです。
public class StringAsIntComparer : IComparer {
public int Compare(object l, object r) {
int left = Int32.Parse((string)l);
int right = Int32.Parse((string)r);
return left.CompareTo(right);
}
于 2009-07-24T17:32:34.087 に答える