初遇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.   
  
*/
posted @ 2008-11-09 17:30  WCJ  阅读(331)  评论(6编辑  收藏  举报