当判断条件有三种状态时,又不想使用枚举可以使用bool?
例:
bool? isA=true;//三种状态:true,false,null if(isA==null) { } else { if((bool)isA) {} else {} }
//或者
if(isA.HasValue) {
if(isA.Value) {} else {}
} else { }
同理:int? ,double? ,char? ,int?[] 等都可以设置为null,
抽象来说:T 可以是包括 struct 在内的任何值类型,但不能是引用类型,那么T? 意思就是 T范围值+ 上可为空的值。