Questions:
- Explain the concept of null-conditional operators.
- What are nullable types in C#?
- How do you define a nullable type in C#?
- What is the purpose of the "?? operator" in C#?
- Explain the use of the "switch" statement in C#.
1. Concept of Null-Conditional Operators:
The null-conditional operators (?. and ?[]) in C# allow you to perform member and element access operations only when the operand is not null. They help prevent NullReferenceException and make the code more concise and readable.
?.Operator: Used for accessing members (properties, methods) safely.
Person person = null; string name = person?.Name; // name will be null if person is null Console.WriteLine(name); // Output: (null) Person person2 = new Person { Name = "John" }; string name2 = person2?.Name; // name2 will be "John" if person2 is not null Console.WriteLine(name2); // Output: John
?[]Operator: Used for safely accessing elements in arrays or collections.
int[] numbers = null; int? firstNumber = numbers?[0]; // firstNumber will be null if numbers is null Console.WriteLine(firstNumber); // Output: (null) int[] numbers2 = { 1, 2, 3 }; int? firstNumber2 = numbers2?[0]; // firstNumber2 will be 1 if numbers2 is not null Console.WriteLine(firstNumber2); // Output: 1
2. Nullable Types in C#:
Nullable types allow value types to represent null values. This is useful when working with databases or other scenarios where a value might be missing or undefined.
3. Defining a Nullable Type in C#:
To define a nullable type, use the ? suffix with the value type.
int? nullableInt = null; nullableInt = 5; Console.WriteLine(nullableInt); // Output: 5
In this example, nullableInt is a nullable integer that can hold both null and integer values.
4. Purpose of the ?? Operator in C#:
The ?? operator, known as the null-coalescing operator, is used to provide a default value when the left-hand operand is null.
string name = null; string defaultName = "Default Name"; string result = name ?? defaultName; Console.WriteLine(result); // Output: Default Name name = "John"; result = name ?? defaultName; Console.WriteLine(result); // Output: John
In this example, if name is null, result will be assigned the value of defaultName. Otherwise, it will be assigned the value of name.
5. Use of the switch Statement in C#:
The switch statement is used to select one of many code blocks to execute based on the value of an expression. It is a cleaner alternative to multiple if-else statements when you have multiple conditions to check.
int day = 3; string dayName; switch (day) { case 1: dayName = "Monday"; break; case 2: dayName = "Tuesday"; break; case 3: dayName = "Wednesday"; break; case 4: dayName = "Thursday"; break; case 5: dayName = "Friday"; break; case 6: dayName = "Saturday"; break; case 7: dayName = "Sunday"; break; default: dayName = "Invalid day"; break; } Console.WriteLine(dayName); // Output: WednesdayIn this example, the
switch statement checks the value of day and assigns the corresponding day name to dayName. If day does not match any case, the default case is executed.

Comments
Post a Comment