C#でネストされたif文(入れ子構造)を使う方法をわかりやすく解説
C#におけるネストされたif文(入れ子のifステートメント)とは、あるif文またはelse if文の中に、さらに別のif文やelse if文を組み込んで記述する構造のことです。外側の条件が満たされた場合にのみ、内側の条件が評価されるため、複数の条件を段階的にチェックしたい場面で非常に役立ちます。
ネストされたif文の基本構文
ネストされたif文の基本的な書き方は以下のとおりです。
if( boolean_expression 1) {
/* ブール式1がtrueの場合に実行される */
if(boolean_expression 2) {
/* ブール式2がtrueの場合に実行される */
}
}この構文では、まず外側のブール式1が評価され、その結果がtrueである場合に限り、内側のブール式2が評価されます。外側の条件がfalseであれば、内側のif文は一切実行されません。
ネストされたif文の使用例
次の例では、2つのif文を使って2つの条件を順番にチェックしています。変数aが5であることを確認した後、さらに変数bが10であるかどうかを判定し、両方の条件が成立した場合にのみメッセージを出力します。
if (a == 5) {
/* 条件がtrueの場合、次の判定へ進む */
if (b == 10) {
/* 条件がtrueの場合、次のメッセージを出力する */
Console.WriteLine("Value of a is 5 and b is 10");
}
}完全なサンプルコード
以下は、ネストされたif文を含む完全なC#プログラムの例です。
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
/* ローカル変数の定義 */
int a = 5;
int b = 10;
/* ブール条件のチェック */
if (a == 5) {
/* 条件がtrueの場合、次の判定へ進む */
if (b == 10) {
/* 条件がtrueの場合、メッセージを出力する */
Console.WriteLine("Value of a is 5 and b is 10");
}
}
Console.WriteLine("Exact value of a is : {0}", a);
Console.WriteLine("Exact value of b is : {0}", b);
Console.ReadLine();
}
}
}実行結果
このプログラムを実行すると、以下のような出力が得られます。
Value of a is 5 and b is 10 Exact value of a is : 5 Exact value of b is : 10
ポイントまとめ
- ネストされたif文は、外側の条件がtrueのときだけ内側の条件が評価されます。
- 複数の条件を段階的に確認したい場合に有効な手法です。
- ネストが深くなりすぎると可読性が低下するため、必要に応じて論理演算子(&&など)を使った条件の結合も検討しましょう。
-
ExcelのIF関数の使い方完全ガイド|単一条件からネストIF(複数条件)まで徹底解説
Excelで数式を作成する際に頻繁に活用される関数のひとつがIF関数です。IF関数は論理条件をテストし、その結果がTRUE(真)かFALSE(偽)かに応じて、2つの異なる結果を返すことができる非常に便利な関数です。 ここでは、以下の携帯電話販売データの表を例に、IF関数の基本的な使い方から応用までを段階的に解説していきます。 単一条件でのIF関数の使い方 まずは基本となるシンプルな例から見ていきましょう。販売場所(D列)に応じて、各行の手数料(コミッション)を計算するケースを考えます。ルールは以下の通りです。 販売場所がUSA(アメリカ)の場合:手数料は売上の10% それ以外の場所の
-
AndroidのListViewでネストされた(2次元)配列を表示する方法【サンプルコード付き】
この記事では、AndroidアプリのListViewを使って、ネストされた(多次元)配列の値を画面に表示する方法を、実際のコード例とともにわかりやすく解説します。2次元配列のデータを1つのリストとして展開して表示する基本的な手法をマスターしましょう。全体の流れ今回作成するのは、2次元配列に格納された複数の文字列データをListViewに展開して一覧表示するシンプルなアプリです。手順は以下の通りです。Android Studioで新規プロジェクトを作成するレイアウトファイル(activity_main.xml)にListViewを配置するMainActivityでネストされた配列を展開し、Ada