No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
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 項演算もあります。構文は次のようになります。
これは「if 条件 (Boolean 型の x = true), then 結果 = y; else 結果 = z」と読めます。次のコードを実行します。
結果の文字列は「You are great」という値になります。
1x ? y : z1Boolean isIt = true;
2String x = 'You are ' + (isIt ? 'great' : 'small');
3System.debug(x);