Conditional Logical Operators
Parte de la sección Lógica y Flujo del Journey de C# de Coddy — lección 37 de 66.
C# proporciona operadores especiales para trabajar con valores nulos de forma concisa. Dos de ellos muy útiles son ?? (el operador de fusión de nulos) y ?. (el operador condicional nulo). Tenga en cuenta que estos son operadores de manejo de nulos; el término "operadores lógicos condicionales" en C# se refiere a && y ||.
Primero exploremos el operador de coalescencia nula (??). Este operador devuelve el operando de la izquierda si no es nulo; de lo contrario, devuelve el operando de la derecha.
Crea una variable de cadena que podría ser nula:
string name = null;Utiliza el operador de coalescencia nula para proporcionar un valor por defecto:
string displayName = name ?? "Guest";Después de ejecutar el código anterior, la variable displayName contiene:
"Guest"Si name tuviera un valor, se usaría ese valor en su lugar:
string name = "Alice";
string displayName = name ?? "Guest";Ahora displayName contiene:
"Alice"Desafío
FácilCrea un método llamado getSafeValue que recibe dos argumentos:
- Un entero que admite valores nulos (
int?value) - Un entero (
intdefaultValue)
El método debe devolver el value si no es nulo; de lo contrario, debe devolver el defaultValue. Usa el operador de coalescencia nula (??) para lograr esto.
Pruébalo tú mismo
using System;
class GetSafeValue
{
public static int getSafeValue(int? value, int defaultValue)
{
// Escribe tu código aquí
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety