この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Boolean と条件付きステートメント

変数が true または false の値を持つ場合は、Boolean データ型を使用します。Boolean 値は、すでに前のレッスンで戻り値として使用されていました。endsWith メソッドは Boolean 値を返し、== および != String 演算子は文字列比較の結果に基づいて Boolean 値を返します。次のような変数を作成して値を割り当てることもできます。
1Boolean isLeapYear = true;
Boolean には、いくつかの標準演算子があります。否定演算子 ! は、引数が false の場合に true を返します (その逆もあります)。&& 演算子は論理 AND を返し、|| 演算子は論理 OR を返します。たとえば、次のステートメントはすべて false と評価されます。
1Boolean iAmFalse = !true;
2Boolean iAmFalse2 = iAmFalse && true;
3Boolean iAmFalse3 = iAmFalse || false;
Boolean の値に応じて、条件を満たしたらロジックを実行するようにするには、if ステートメントを使用します。
1Boolean isLeapYear = true;
2if (isLeapYear) {
3    System.debug ('It\'s a leap year!');
4} else {
5    System.debug ('Not a leap year.');
6}

エスケープシーケンス: 上の例では、最初の System.debug ステートメントの引数内にバックスラッシュ (\) 文字が含まれています ('It\'s a leap year!')。Apex では、単一引用符に String 値を囲むという特殊な意味があります。String 値内に単一引用符を使用するには、各単一引用符の直前にバックスラッシュ (\) 文字を追加してエスケープします。このようにすると、Apex は、単一引用符文字を文字列の終了マーカーとしてではなく、文字列内の文字値として扱うように認識します。Apex では、単一引用符のエスケープシーケンスのような、文字列内の特殊文字を表すエスケープシーケンスがその他にも提供されています。\b (バックスペース)、\t (タブ)、\n (改行)、\f (フォームフィード)、\r (行頭復帰)、\" (二重引用符)、\' (単一引用符)、\\ (バックスラッシュ) です。

上の例では、else 部分は省略可能です。ブロック (中括弧内のステートメント) には、条件を満たしたときに実行される任意の数のステートメントを含めることができます。たとえば、次のコードは 2 つの debug ステートメントの出力を生成します。
1if ('Hello'.endsWith('o')) {
2    System.debug('me');
3    System.debug('me too!');
4}
ブロックに含まれるステートメントが 1 つのみの場合、中括弧を省略することもできます。たとえば、次のようになります。
1if (4 > 2) System.debug ('Yep, 4 is greater than 2');
上記 2 つに加え、if-then-else ステートメントの省略形として機能する条件付き 3 項演算もあります。構文は次のようになります。
1x ? y : z
これは「if 条件 (Boolean 型の x = true), then 結果 = y; else 結果 = z」と読めます。次のコードを実行します。
1Boolean isIt = true;
2String x = 'You are  ' + (isIt ?  'great' : 'small');
3System.debug(x);
結果の文字列は「You are great」という値になります。