Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何找到最大日期_C# - Fatal编程技术网

C# 如何找到最大日期

C# 如何找到最大日期,c#,C#,我在C#工作,在Windows上使用VisualStudio2005。我想找出两个日期之间的最大日期 假设: From Date: 10-1-2009//Day-Month-YYYY To Date : 1-3-2009 我想写一个方法,返回“todate”是两者中较大的一个 public static DateTime WhichIsBigger(DateTime first, DateTime second) { if(first > second) return first;

我在C#工作,在Windows上使用VisualStudio2005。我想找出两个日期之间的最大日期

假设:

From Date: 10-1-2009//Day-Month-YYYY
To Date  : 1-3-2009
我想写一个方法,返回“todate”是两者中较大的一个

public static DateTime WhichIsBigger(DateTime first, DateTime second) {
  if(first > second) return first;
  else return second;
}
或者是真正的一行:

Func<DateTime, DateTime, DateTime> whichIsBigger = (f, s) => f > s ? f : s;
Func whichIsBigger=(f,s)=>f>s?f:s;

哦,得了吧,这一个是尖叫着要成为一个单一的班轮

public static DateTime Max(DateTime a, DateTime b) {
    return a > b ? a : b;
}

DateTime类以数字形式将时间点存储为称为记号的64位整数值一个滴答声表示一百纳秒或一千万分之一秒


由于
DateTime
只是一个数值,因此您可以像使用
运算符比较任意两个数字一样轻松地比较它们。

请尝试使用此选项以确定大小,再次编写Max例程没有意义-使用泛型

public T Max<T>(T value1, T value2) where T:IComparable
{
    return value1.CompareTo(value2) > 0 ? value1 : value2;
}
public T Max(T值1,T值2),其中T:i可比较
{
返回值1.与(value2)>0的值进行比较?value1:value2;
}

您可以使用Linq到对象扩展方法
Max
如下:

new [] {date1,date2,date3}.Max();

啊,VisualStudio2005。好吧,有人可以指出函数在那里无论如何都不起作用:p这显然是一个家庭作业问题@考虑到原始版本,Adam有点不那么明显。我是根据操作的简单性来判断的,而不是问题的措辞。你说得更清楚了,但他基本上是在问如何使用比较运算符。这是编程101类的东西。我认为这个人是一个初学者,他被要求做一些他不懂的事情,更重要的是,他几乎不懂英语。阅读他所有的问题和答案,你就会明白。我认为这很像家庭作业,因为他被要求做一些他不懂的事情,但无论如何都要做。我只是希望他能问一个“班上的朋友”,或者付钱给班上的天才帮他做家庭作业。见AgileJon的回答:DateTime(以及TimeSpan和DateTimeOffset)implement>,没有说你必须这么做,只是提供一点DateTime类的背景知识。他不需要背景知识。他甚至不需要任何线索。如果你给了他线索,他就看不懂了。那么?我们的答案不仅对OP有用。即使他没有受益,也可能有人受益。哦,拜托!从来都不知道你可以简单地比较他们!我真傻!!!我在做减法运算,甚至是表达式来找到那些值!!-\u多谢了,很好的解决方案。