DateTime? a = DateTime.Now;
a = a ?? null;
Console.WriteLine(a);//结果:当前时间,因为a的初值为当前时间,不为null
和
DateTime? a = DateTime.Now;
a = a == null ? a : DateTime.Now;
Console.WriteLine(a);
是一样的
这个运算符只支持应用类型和可空类型。
Func<T, TResult> 委托你可以参考这个说的比较清楚:http://msdn.microsoft.com/zh-cn/library/bb549151.aspx
希望能帮到你
lamda表达式
=> 是lamda表达式,也是一个委托,写法是一步步简化出来的具体内容你要自己百度了,内容比较多,??这个是运算符
举个例子你就知道了
DemoClass dClass;
dClass==null??new DemoClass 如果dClass为null 则实例化一个DemoClass对象给它,说白了就是检查对象是否为null的
等价于:
public static string isLogin(object obj) { return obj as string ?? string.Empty; }
使用方式:
string s = isLogin("fsdfs");
细节请参考:http://msdn.microsoft.com/en-us/library/bb549151.aspx。