首页> C#> DateTime.hasvalue vs datetime == null,哪个更好,为什么

这个问题已经在这里有了答案:            >            Which is preferred: Nullable<T>.HasValue or Nullable<T> != null?                                    6个
我想问一个有关控制datetime的空值的问题.

if (mydatetime != null)

要么

if(mydatetime.hasvalue)

哪个更好或更合适?为什么?

谢谢.

最佳答案
第一个比较!= null一直是有效的比较,因为只有当变量声明为Nullable时才可以使用第二个比较,换句话说,只有当DateTime变量声明为Nullable时才可以使用与.HasValue的比较.

例如 :

DateTime dateInput; 
// Will set the value dynamically
if (dateInput != null)
{ 
   // Is a valid comparison         
}
if (dateInput.HasValue)
{ 
   // Is not a valid comparison this time        
}

在哪里

DateTime? dateInput; // nullable declaration
// Will set the value dynamically
if (dateInput != null)
{ 
   // Is a valid comparison         
}
if (dateInput.HasValue)
{ 
   // Is also valid comparison this time        
}

转载注明原文:首页> C#> DateTime.hasvalue vs datetime == null,哪个更好,为什么 - 代码日志