C#基础知识拾遗:小问号大用途
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
用法一:null 判断运算符
IEnumerable<IAuthorizeData> authData = ep?.Metadata.GetOrderedMetadata<IAuthorizeData>(); 等同于: if(null!=ep) { IEnumerable<IAuthorizeData> authData = ep.Metadata.GetOrderedMetadata<IAuthorizeData>(); } 用法二:null 合并运算符
IEnumerable<IAuthorizeData> authData = ep?.Metadata.GetOrderedMetadata<IAuthorizeData>() ?? Array.Empty<IAuthorizeData>(); 等同于: IEnumerable<IAuthorizeData> authData; if(null!=ep) { if(null!=ep.Metadata.GetOrderedMetadata<IAuthorizeData>()) { authData = ep.Metadata.GetOrderedMetadata<IAuthorizeData>(); } else { authData = Array.Empty<IAuthorizeData>(); } }else{ authData = Array.Empty<IAuthorizeData>(); } 用法三:三元运算符
IEnumerable<IAuthorizeData> authData = ep==null ? Metadata.GetOrderedMetadata<IAuthorizeData>() : Array.Empty<IAuthorizeData>(); 用法四:可空类型
private int? getNum = null; 等同于: private Nullable<int> getNum = null; 注意默认值不同: int Num; //默认 0 int? Num; // 默认 null Console.WriteLine(Num ?? 0) //输出 0 该文章在 2023/5/17 9:48:53 编辑过 |
关键字查询
相关文章
正在查询... |