情境:
判断当某个变数为null的时候,丢出exception
通常要实现此逻辑,需要写一个变数保存,接着判断是否为null。
static List<string> listUser = new List<string>(){"xxxyyyzzz"};void checkUser(string UserID){//一般作法var userid_normal = listUser.Where(w=>w.Equals(UserID)).SingleOrDefault();if(userid_normal == null)throw new Exception("没有此帐号");}void Main(){checkUser("xxxyyyzzz");checkUser("error_user_id");}
想要在缩短行数,可以使用null 联合运算子
使用方式再取值后面加上??+动作
举例:
static List<string> listUser = new List<string>(){"xxxyyyzzz"};void checkUser(string UserID){//null 联合运算子 方式var userid_ternary_condition = listUser.Where(w => w.Equals(UserID)).SingleOrDefault()??throw new Exception("没有此帐号");}void Main(){checkUser("xxxyyyzzz");checkUser("error_user_id");}