3

値のリストがあり、datetime各アイテムをすべてのアイテムと比較しようとしています。

var dateList = new List<DateTime>();

基本的には、すべての項目が等しいかどうかを確認したい。

DateTime.Compareを使用できると思いますが、各要素を調べて比較する方法がわかりません。

4

4 に答える 4

8

基本的にすべての項目が等しいかどうかを確認したいと思います。

の必要はありませんDateTime.Compare。チェックするだけ

dateList.Distinct().Count();

それが1に等しい場合、それらは等しいですが、それが1より大きい場合、いいえ、それらは等しくありません。

于 2012-08-21T10:21:49.243 に答える
3
var notAllEqual = dateList.Any(x => x != dateList.First())
于 2012-08-21T10:22:41.953 に答える
2

非Linqアプローチ:

    bool AreAllDatesEqual(List<DateTime> dateList)
    {
        var first = dateList[0];
        for (int i = 1; i < dateList.Count; i++)
        {
            if (first != dateList[i])
                return false;
        }

        return true;
    }
于 2012-08-21T10:22:23.997 に答える
2
bool b = dateList.Skip(1).All(x=>x.Equals(dateList[0]));
于 2012-08-21T10:21:23.113 に答える