初遇DateTime? 类型
无意中在一程序中看到这种类型的声明——DateTime? ,(不知道大家又没用过,反正我是第一次碰到),后来去查了下资料才知道它是C#2.0的新特性,表示可以为空值,这么解释不知道对否,有错请指正^_^! 下面是摘自MSDN的代码:
using System;
class Sample
{
public static void Main()
{
DateTime? myNow;
//Assign the current date and time to myNow then display its value.
myNow = DateTime.Now;
Display(myNow, "1)");
//Assign null (Nothing in Visual Basic) to myNow then display its value.
myNow = null;
Display(myNow, "2)");
}
//Display the date and time.
public static void Display(DateTime? displayDateTime, string title)
{
//If a value is defined for the displayDatetime argument,display its value;otherwise,
//display that no value is defined.
Console.Write(title);
if(displayDateTime.HasValue == true)
Console.WriteLine("The date and time is {0:F}.",displayDateTime.Value);
else
Console.WriteLine("The date and time is not defined.");
}
}
/*
This code example produces the following results:
1)The date and time is Tuesday, April 19,2005 4:16:06 PM.
2)The date and time is not defined.
*/
class Sample
{
public static void Main()
{
DateTime? myNow;
//Assign the current date and time to myNow then display its value.
myNow = DateTime.Now;
Display(myNow, "1)");
//Assign null (Nothing in Visual Basic) to myNow then display its value.
myNow = null;
Display(myNow, "2)");
}
//Display the date and time.
public static void Display(DateTime? displayDateTime, string title)
{
//If a value is defined for the displayDatetime argument,display its value;otherwise,
//display that no value is defined.
Console.Write(title);
if(displayDateTime.HasValue == true)
Console.WriteLine("The date and time is {0:F}.",displayDateTime.Value);
else
Console.WriteLine("The date and time is not defined.");
}
}
/*
This code example produces the following results:
1)The date and time is Tuesday, April 19,2005 4:16:06 PM.
2)The date and time is not defined.
*/