吴佳鑫的个人专栏

当日事当日毕,没有任何借口

导航

2011年12月7日

default 关键字的两种用法

摘要: 一。大家非常熟悉的在switch语句中,如果没有任何 case 表达式与开关值匹配,则控制传递给跟在可选 default 标签后的语句。如果没有 default 标签,则控制传递到 switch 以外二。用于泛型定义中在泛型类和泛型方法中,在预先未知以下情况时,如何将默认值分配给参数化类型 T: T 是引用类型还是值类型,如果 T 为值类型,则它是数值还是结构。下面详细说明一下。之所以会用到default关键字,是因为需要在不知道类型参数为值类型还是引用类型的情况下,为对象实例赋初值。考虑以下代码:class TestDefault<T> { public T foo() { T 阅读全文

posted @ 2011-12-07 22:27 _eagle 阅读(7493) 评论(1) 推荐(2) 编辑

?可空类型 和 ??运算符

摘要: ?运算符可以使值类型为null 例如: int ?x = null;??运算符 (允许给可能等于null的表达式提供另一个值)例如:int y = x ?? 1;结果 y为 1,即当x为null时 返回 1即运算符右侧数据,反之返回运算符左侧数据(如果第一个操作数不是null,该运算符就等于第一个操作数,否则该运算符就等于第二个操作数) 说明:有时让值类型为null是很有用的(尤其是处理数据库时),泛型使用 System.Nullable<T>类型提供了使值类型为空的一种方式。例如:system.Nullable<int> nullableInt;int? nullab 阅读全文

posted @ 2011-12-07 00:05 _eagle 阅读(392) 评论(0) 推荐(0) 编辑