Salesforce Apexリテラル when 値を使用する方法
構文
when literal {} (when ブロックに複数のカンマ区切りのリテラル句を使用可能)
各 when 値は一意である必要があります。たとえば、リテラル x は 1 つの when ブロック句でのみ使用できます。
when ブロックは 1 回のみ照合されます。
式に一致する when 値がない場合、when else ブロックが実行されます。
操作例
1.Apex のすべての型は null にすることができるため、when 値を null にできます。
switch on i { when 11 { System.debug('when ブロック 11'); } when null { System.debug('null 値'); } when else { System.debug('test ' + i); } }
2.単一値の例
when 値に整数リテラルを使用します。
switch on i { when 11 { System.debug('when ブロック 2'); } when -6 { System.debug('when ブロック -6'); } when else { System.debug('arkt'); } }
3.複数値の例
Apex switch ステートメントはフォールスルーしませんが、when 句に照合する複数のリテラル値を含めることができます。
switch on i { when 22, 33, 44 { System.debug('when block 22 and 33 and 44'); } when else { System.debug('ottt'); } }