この記事の目次
Salesforce拡張時に使われるif-else文とは?
if-else文とはSalesforceのアプリケーション・プラットフォームを拡張するプログラミング言語であるApexにおける条件(if-else)ステートメントです。Apexの条件(if-Else)ステートメントは、Javaと同じように動作します。 例えば、xという変数が1ならAの処理を、2ならBの処理を、といったプログラムを書く際に使われます。Apexにおけるif-elseの概要
Salesforceの機能拡張時に使われる条件(if-Else)ステートメントは条件分岐するプログラムを書く際に使います。特定の項目や変数を参照して、もしある条件を満たしていればこの処理を、そうでなければこの処理を、というように使います。 ちなみに、条件(if-else)ステートメントはif文、if-else文と言われることがあります。本記事でもこの呼び方を使います。基本的なif文
String weather;
String plan;
// 天気が晴れの場合
weather = '晴れ';
if (weather== '晴れ'){
plan = '買い物に出かける';
} else {
plan = '家の掃除をする';
}
上のコードでは、もし天気が晴れなら買い物に出かけよう、そうでなければ家の掃除をしよう、という内容をif文で表しています。
この場合、変数weatherが「晴れ」なので変数planには「買い物に出かける」が代入されます。
しかし、もしweatherが「晴れ」ではなく「曇り」や「雨」など、「晴れ」以外のものが入っていた場合は、planにはelseの後ろに書かれている処理、「家の掃除をする」が代入されるわけです。
else ifの使い方
else-ifを使うことで、if文の条件を満たさなかった場合にさらに条件分岐が可能です。String weather;
Integer temperature;
String plan;
// 天気が曇りで、気温が15度以上の場合
weather = '曇り';
temperature = 17;
if (weather== '晴れ'){
plan = '買い物に出かける';
} else if (temperature >= 15){
plan = '散歩をする';
} else {
plan = '家の掃除をする';
}
else ifを使って、「晴れ」でない場合についてさらに条件分岐しています。変数temperatureが15以上であれば、変数planは「散歩をする」が代入されます。そして、その条件も満たさなかった場合、planには「家の掃除をする」が代入されることになります。
Apexにおけるif-elseの注意点
SalesforceにおけるApexコードの条件分岐(if-Else)ステートメントには同じ内容のif文でもいくつかの書き方があるなど、注意点があります。知らないコードが出てきたと混乱しないようにこちらも覚えておきましょう。elseの省略
Apexのif文は常にelseの省略が可能です。if (x > 2){
System.debug('xは2より大きいです');
}
この場合、xが2より大きいときにだけif文内の処理が行われ、そうでない場合は何も処理が行われません。
{}の省略
if (x == 1)
y = 1;
else
y = 0;
処理する文が1つである場合、「{}」を省略することができます。行数が少なくシンプルな見た目になりますが、修正で処理の文が増えた場合などに「{}」のつけ忘れに注意が必要です。
また、処理の文を同じ行に書くことも可能です。
if (x == 1) y = 1; else y = 0;
ifの入れ子構造
if文の中にさらにif文を書くことができます。これを「入れ子」や「ネスト」などと呼びます。String weather, plan;
Integer temperature;
// weatherが'晴れ'でtemperatureが20の場合
weather = '晴れ';
temperature = 20;
if (weather == '晴れ'){
if(temperature >= 15){
plan = '買い物に出かける';
}
}
この場合、変数weatherが「晴れ」であり、なおかつ変数temperatureが15以上の場合だけ変数planに「買い物に出かける」が代入されます。それ以外の場合は変数planに代入することなく処理が終了します。
入れ子構造の{}の省略
また、上記の入れ子構造のif文はこのように書くこともできます。if (weather == '晴れ') if (temperature >= 15) plan = '買い物に出かける';
1行で書くことができましたが、この書き方に慣れていないとわかりづらいでしょう。もしこの書き方をする場合は可読性が落ちないか、修正する際にわかりやすいかなどに注意しましょう。
条件分岐(if-else)ステートメントを使いSalesforceの拡張に活用しよう!
今回はSalesforceで使われるApexコードの条件分岐(if-Eelse)ステートメントについて紹介しました。 条件分岐はSalesforceの機能拡張のプログラムを組む際にとても重要な制御構造です。本記事で理解を深めてSalesforceを利用する際に活用できるようにしておきましょう。]]>この記事の監修者・著者
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
最新の投稿
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に向いている人の性格・特徴ランキング【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職保安職(自衛官・警察・消防官など)に必要なスキルランキング&スキルアップの方法とは?【現役保安職(自衛官・警察・消防官など)36人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に向いている人の性格・特徴ランキング【現役クリエイター職(ライター・デザイナー・編集)64人が回答】
- 2024年3月26日キャリア・転職クリエイター職(ライター・デザイナー・編集)に必要なスキルランキング&スキルアップの方法とは?【現役クリエイター職(ライター・デザイナー・編集)64人が回答】