bool?

作者:追风剑情 发布于:2023-11-3 10:46 分类:C#

在声明类型后面加个?,可使默认值不为null的变量为null。

  1. using System;
  2.  
  3. namespace ConsoleApp5
  4. {
  5. internal class Program
  6. {
  7. static void Main(string[] args)
  8. {
  9. bool? b = null; //变量b的默认值为null
  10. try
  11. {
  12. if (b == null)
  13. {
  14. Console.WriteLine(b.Value);
  15. }
  16. }
  17. catch (InvalidOperationException ex)
  18. {
  19. //访问值为null的变量b.Value,会引发 InvalidOperationException 异常
  20. Console.WriteLine(ex.Message);
  21. }
  22.  
  23. //当b的值不为null时,返回true
  24. if (b.HasValue)
  25. {
  26. //当HasValue返回true时,说明Value包含有意义的值
  27. bool value = b.Value;
  28. Console.WriteLine("b={0}", value);
  29. }
  30. else
  31. {
  32. Console.WriteLine("b=null");
  33. }
  34.  
  35. Console.ReadKey();
  36. }
  37. }
  38. }

标签: C#

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号