HasValue和Value ?和??的使用小技巧

1.HasValue 和 Value

HasValue 是判断该值是否有值,返回的是bool类型的值,Value表示的就是该值的值 

int? i = null;
int? j = 21;
Console.WriteLine(i.HasValue);   --->结果是 false
Console.WriteLine(j.HasValue); --->结果是true

Console.WriteLine(i+"000"); --->结果是  000
Console.WriteLine(j.Value);--->结果是  21

Console.ReadKey();

 

2.?和??

var like1 = new BBS();

var l2 = like1?.data?.Like ?? 0;

 

下边是类型

class BBS { public Data data { get; set; }}
class Data { public int? Like { get; set; } }//点击率}

 

?(可空类型修饰符)表示:可空

??表示:空合并运算符;表示:当??的左边不为null时,返回左边;当??左边为null时,返回右边

c#6.0中引入一个“?.”  即 null检查运算符;

如:int? A = B?.MethodC?.D;   

基本用法:如果B的值为空,则不执行后边的MethodC,直接返回null;

posted on 2022-01-16 23:13  泰坦尼克号上的活龙虾  阅读(807)  评论(0)    收藏  举报

导航