zoukankan      html  css  js  c++  java
  • 类型后面加问号 int?


    单问号---用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0!

    双问号---用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过!


    public int? para = null;
    //public int para;如果不注释掉此行,而把上一行注释掉的话,下面会报错!
    public int par()
    {
    return this.para ?? 0;

    }

    	/// <summary>
    	/// BZZS
            /// </summary>
            private decimal? _bzzs;
            public decimal? BZZS
            {
                get{ return _bzzs; }
                set{ _bzzs = value; }
            }

    如:上面代码,加上问号后 初始这个类里面的变量的时候是null,不加问号 初始化变量的时候 就是0



    如Int32、结构体等这样的类型是不可能为空的,常见的如int,DateTime都是不可能为空的。所以在需要判断是否有值的场合,可以用加问号的可空值类型,如int?,DateTime?

    这时,可以为空(null),并且可以通过它的HasValue属性来判断是否有值,并通过Value属性获得真正的值。
    它可以通过对包装类型直接赋值的方式隐式创建,如:

    int? a=32;

    具体的,可以搜索“可空值类型”来了解更多信息

  • 相关阅读:
    MapReduce-shuffle过程详解
    YARN中的失败分析
    HBase协处理器的使用(添加Solr二级索引)
    Flume具体应用(多案例)
    Flume架构及运行机制
    python Cmd实例之网络爬虫应用
    mongodb3 权限认证问题总结
    webpack配置
    apt软件包管理
    python笔记之编程风格大比拼
  • 原文地址:https://www.cnblogs.com/yanergui/p/5624765.html
Copyright © 2011-2022 走看看