Conditional Logical Operators
CoddyのC#ジャーニー「ロジックとフロー」セクションの一部 — レッスン 37/66。
C#には、null値を簡潔に扱うための特別な演算子が用意されています。便利なものとして、??(null合体演算子)と?.(null条件演算子)の2つがあります。これらはnull処理演算子であることに注意してください。C#における「条件論理演算子」という用語は、&&と||を指します。
まず、Null合体演算子(??)について見ていきましょう。この演算子は、左辺のオペランドがnullでない場合はその値を返し、そうでない場合は右辺のオペランドを返します。
nullになる可能性がある文字列変数を作成します:
string name = null;null合体演算子を使用してデフォルト値を提供します:
string displayName = name ?? "Guest";上記のコードを実行した後、変数 displayName には以下が含まれます:
"Guest"name に値がある場合は、代わりにその値が使用されます:
string name = "Alice";
string displayName = name ?? "Guest";現在、displayName には以下が含まれています:
"Alice"チャレンジ
簡単2つの引数を受け取る getSafeValue という名前のメソッドを作成してください:
- null許容型の整数 (
int?value) - 整数 (
intdefaultValue)
このメソッドは、値が null でない場合はその値を返し、そうでない場合は defaultValue を返す必要があります。これを実現するには、null合体演算子 (??) を使用してください。
自分で試してみよう
using System;
class GetSafeValue
{
public static int getSafeValue(int? value, int defaultValue)
{
// ここにコードを記述してください
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックとフローのすべてのレッスン
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