C# ? 問號的用途
常常老是忘記一些平常不常用的語法,順便筆記一下,
經常看到有些程式會有這樣的用法,如下
1. int? number;
2. txtName.Text.Trim().Length == 0 ? null : txtName.Text.Trim()
3 .a??0
第一種的意思
?(單問號),是System.Nullable<T>的縮寫形式,可null類型。
第二種的意思
? 為三元運算符,在上面例子中,就等於是
if (txtName.Text.Trim().Length == 0)
{
取 null;
}
else
{
取 txtName.Text.Trim();
}
第三種的意思
??(雙問號),意思是取所賦值??左邊的,如果左邊為null,取所賦值??右邊的,所以上面例子等於是
if (a==null)
{
取 0;
}
else
{
取 a;
}
筆記一下以免老是忘記。