C#, C♯, C#相談室 Part85
■ このスレッドは過去ログ倉庫に格納されています
0652デフォルトの名無しさん
2014/12/13(土) 03:10:36.80ID:y9otNf+Tそう思って書いた以下のコードなんだが・・・
public class DescendingRandomComparer : IComparer<int>
{
public int Compare(int x, int y)
{
return x == y ? Form1.random.Next(2) * 2 - 1 : -x.CompareTo(y);
}
}
自分のデータでやると落ちるんだよね^^;
ちなみにメッセージは以下
追加情報:IComparer.Compare() メソッドから矛盾する結果が返されたため、
並べ替えできません。値をそれ自体と比較したときに等しい結果にならないか、
またはある値を別の値と繰り返し比較したときに異なる結果が生じます。
同じデータに対してLINQ版は正常に動作するから、
Comparer版はどっかロジックに穴があるはずなんだよね^^;
■ このスレッドは過去ログ倉庫に格納されています