1、int? id 表示id是可以为null的整型 跟Nullable<int> id 是一样的,既可被赋值为int类型的也可为Null,当被赋值为Null时不会报错

    2、id ?? 1等于 id==null?1:id;(三元运算符)即当id==null的时候,输出的值为1,当id!=null时输出的值为id

    例: int?x=null;

         int y=x??1;<===>int y=x==null?1:id;

     

    3、更明白的解释:

        C#中两个问号(“?”)的作用是判断“?”左边的对象是否为null,如果不为null则使用“?”左边的对象,如果为null则使用“?”右边的对象.