zoukankan      html  css  js  c++  java
  • 【读书笔记】 C# 可空数据类型

    数据库中的数字和编程语言中的数字有显著不同的特征,因为数据库中的数字可以为空,C#中的数字不能为空。Int32是一个结构,而结构是值类型的,所以它不能为空。

    在C#中可以使用Nullable<T>结构很容易解决这个问题。

    定义可空类型:

     Nullable<int> x;
     int? x2;
    

    可以检查Nullable<T>的HasValue和Value属性

                Nullable<int> x;
    
                x = 4;
                x += 3;
    
                if (x.HasValue)
                {
                    int y = x.Value;
                }
    
                x = null;
    

    可空数据类型还可以使用算数运算符。变量x3是变量x1和x2的和。如果这2个可空变量中有一个的值为null,他们的和就是null。

    int? x1 = GetNullableType(); 

    int? x2 = GetNullableType();

    int? x3 = x1 + x2;

    将可空数据类型转换为非可空数据类型:

    第一种,显示转换

    int? x1 = GetNullableType();

    int y1 = (int)x1

    第二种,使用接合运算符转换 这个更安全些

    int? x1 = GetNullableType();

    int y1 = x1 ?? 0;

    当使用GetNullableType()方法的时候,你会发现这样的错误信息

    The name 'GetNullableType' does not exist in the current context

    这个应该是GetNullableType方法的命名空间没有加入,但是这个方法具体在哪个命名空间还没有找到o(╯□╰)o

    伪python爱好者,正宗测试实践者。
  • 相关阅读:
    js自动小轮播
    js字符串
    工资
    可是姑娘,你为什么要编程呢?
    程序猿媳妇儿注意事项
    js勾选时显示相应内容
    js点击显示隐藏
    js选项卡
    js数组
    js旋转V字俄罗斯方块
  • 原文地址:https://www.cnblogs.com/herbert/p/1745529.html
Copyright © 2011-2022 走看看