In C#? Represents a nullable type, which can represent all T values of the base type and additional null values,? ? It means that the null coalescing operator means that when the operand is not null, it returns the value on the left side, otherwise it returns the right side, etc.
In C#? There will be different usages depending on the number, such as? and? ? The meanings of these two operators are different. Next, I will introduce the ? in C# to you in detail in the article. What are the specific usages? It has certain reference value. I hope it will be helpful to everyone.
[Recommended courses: C# language Tutorial】
? (Nullable type)
A nullable type is an instance of the System.Nullable <T>
structure. A nullable type can represent all values T of the base type, as well as other NULL value. The underlying type T can be any non-nullable value type. But T cannot be a reference type.
Nullable types can be used when used to represent undefined values of the underlying type. Nullable types have the following characteristics:
(1) Under a nullable type, a variable can be assigned a null value without creating a nullable type based on a reference type.
(2) Nullable types do not support nested Nullable types.
(3) Nullable types do not support var type. If Nullable and var are used, a compilation error will occur
Example:
// C# program to illustrate the // use of Nullable type using System; class GFG { // 主方法 static public void Main() { int ? a = null; int ? b = 2345; Console.WriteLine(a); Console.WriteLine(b); } }
Output result: 2345
? ? (Null coalescing operator)
In C#, the ?? operator is called the null-coalescing operator, which is the null coalescing operator. The meaning is that when the operand is not null, it returns the left operand; otherwise it returns the right operand. If you assign a nullable value type to a non-nullable value type without using the ?? operator, a compile-time error is generated. If a cast is used and no nullable value type is currently defined, an InvalidOperationException exception is thrown.
Example:
//声明a和b int?a=null; int b; b=a??2;//b的值为2 a=6; b=a??8;//b的值为6
?: (ternary operator)
In C#, there is a special operator called ternary operation symbol, similar to if-else. The ternary operator compares two values and returns a value based on it. The syntax of the ternary operator is:
条件表达式?表达式1:表达式2;
It can return a value of any data type.
Example:
using System; namespace Tutpoint { class Program { public static void Compare(int a, int b) { string output = a > b ? "A 大于 B" : "B 大于 A"; Console.WriteLine(output); } static void Main(string[] args) { Program.Compare(66, 579); Console.ReadKey(); } } }
The result output is: B is greater than A
Summary: The above is the entire content of this article, I hope it will be helpful to everyone.
The above is the detailed content of in C#? What are the uses. For more information, please follow other related articles on the PHP Chinese website!