美文网首页
20171026:C#可空类型遇到的一个小坑

20171026:C#可空类型遇到的一个小坑

作者: DP_Feynman | 来源:发表于2017-10-30 09:50 被阅读0次

基本概念

C#中可空类型是值可以为null的类型,也就是说可以直接赋值为null,比如int? value = null

出现的问题

按一般编程string text = true ? 'hello,world':null来同样给可空类型进行三元运算符计算

int? value = true ? 1 : null;

编辑器会提示:无法确定表达式的类型,因为<null>和int之间没有存在隐式转换

解决方法

既然不能隐式转换,那就采取显式转换,代码如下:int? value = ture ? 1 : (int?)null

小结

  1. 三元运算符结果之间的类型必须可以隐式转换
  2. 可空类型的三元运算符操作如果需要赋值为null的话,需要进行强制(显式)转换

相关文章

  • 20171026:C#可空类型遇到的一个小坑

    基本概念 C#中可空类型是值可以为null的类型,也就是说可以直接赋值为null,比如int? value = n...

  • C#魔将-lesson_03-可空类型

    可空类型(Nullable) C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示...

  • C# 第二节

    C# 可空类型(Nullable) C# 单问号 ? 与 双问号 ?? ? :单问号用于对 int,double,...

  • Swfit可空(Optional)类型基础

    可空类型,对于熟悉C#的同学一定不会陌生。在C#里面值类型都是不能为空的,比如int类型默认为0,bool默认为f...

  • C# 可空类型

    1 单问号 '?' 与双问号 '??' 1.1 单问号 单问号用于对 int、double、bool 等无法直接赋...

  • C#中的匿名类型

    ​ 在一个项目中遇到了一个关于匿名类型的坑 在C#中的匿名类型是这样创建的: 而这些匿名类型的属性是inter...

  • 如何使用C#的可空类型

    解析可空类型 ??操作符也就是"空合并操作符",它代表的意思是两个操作数,如果左边的数不为null时,就返回左边的...

  • Kotlin学习笔记-空类型、空安全、非空断言、类型转换等特性总

    一、可空类型、空安全 1.1、定义一个可空类型的变量 定义一个可空类型的变量的格式为:修饰符 变量名 : 类型? ...

  • 《C#学习笔记》的笔记

    适合在校生阅读,也适合有工作经验但基础不扎实的人温故知新。 C# 1.0 事件、委托C# 2.0 泛型、可空类型、...

  • c# 可空值类型和string

    可空值类型 是System.Nullable这个struct的实例 可空值类型除了可以正确的表示其底层数据类...

网友评论

      本文标题:20171026:C#可空类型遇到的一个小坑

      本文链接:https://www.haomeiwen.com/subject/knqppxtx.html