2009-09-17 21 views
6

Làm thế nào để bạn nhận được datetime tối đa từ một danh sách các giá trị DateTime sử dụng C# 2.0?Max DateTime trong danh sách

+0

cần ... thêm ... thông tin ... Lấy ngày giờ tối đa trong vòng lặp, wtf? tối đa ngày giờ của những gì? vòng lặp đó làm gì? –

+3

Được đề cử cho ** câu hỏi mơ hồ nhất trong tháng này **. – Welbog

+3

@Welbog: Tôi nghĩ rằng chỉ chỉnh sửa của bạn làm cho câu hỏi vô nghĩa. –

Trả lời

3

Dưới đây là một vòng lặp đơn giản để làm điều này:

List<DateTime> dates = new List<DateTime> { DateTime.Now, DateTime.MinValue, DateTime.MaxValue }; 

DateTime max = DateTime.MinValue; // Start with the lowest value possible... 
foreach(DateTime date in dates) 
{ 
    if (DateTime.Compare(date, max) == 1) 
     max = date; 
} 

// max is maximum time in list, or DateTime.MinValue if dates.Count == 0; 
3

Bạn có nghĩa là datetime tối đa trong bộ, bộ sưu tập, hoặc Danh sách? Nếu vậy:

DateTime max = DateTime.MinValue; 
foreach (DateTime item in DateTimeList) 
{ 
    if (item > max) max = item; 
} 
return max; 

Nếu bạn có nghĩa là bạn muốn biết giá trị hỗ trợ cao nhất có thể cho bất kỳ datetime, nó chỉ là:

DateTime.MaxValue; 
17

gì với tất cả các iterating .... này là rất tầm thường

 
// Given... 
List<DateTime> _Dates = { a list of some dates... } 

// This is the max... 
DateTime MaxDate = _Dates.Max(); 
+0

Điều này là tốt, nhưng bạn cần .NET 3.5. –

+0

cảm ơn bạn đã thêm thông tin mới ... đây là những gì tôi đang tìm kiếm –

Các vấn đề liên quan