java if statement tutorial with examples
Java If-thenステートメントは、意思決定ステートメントの最も単純な形式です。 JavaのIfelseのすべてのバリエーションについて学習します。
Javaがifステートメントを使用して条件付きチェックを実行する方法について説明します。この条件付きチェックは、Javaでは意思決定とも呼ばれます。
したがって、Java – if構文は、意思決定主導のステートメントの記述に役立ち、特定の条件に基づく特定のコードセットを実行できるようにします。
このチュートリアルには、if-constructをよりよく理解するのに役立つプログラミング例、構文、および実際の例が含まれています。
このチュートリアルでは、ifステートメントの次のバリエーションについて詳しく説明します。
- 単純なifステートメント
- If-elseステートメント
- ネストされたifステートメント
- If-else-ifはしご
- 三項演算子
学習内容:
JavaIfステートメント
Javaの「ifステートメント」(「if-thenステートメント」とも呼ばれます)は、意思決定ステートメントの最も単純な形式です。このifステートメントは、特定の条件を設定するのに役立ちます。これらの条件に基づいて、実行するコードの行をいくつか指定します。
構文:
if (specify condition here) { // specify code to be executed here }
ifステートメントの条件がtrueの場合のみ、括弧内のコードが実行されます。
条件の例の場合
以下の例では、変数を値10で初期化しました。次に、ifステートメントを開始し、条件を指定しました。条件が満たされると、printステートメント(if内)が実行されます。
public class example { public static void main(String() args) { int a=10; // specified condition inside if statement if (a>=5){ /* * if the condition is satisfied then * print the below statement */ System.out.println('a is 10'); } } }
出力:
xboxone用バーチャルリアリティヘッドセット
Java If-else
これは、if-then-elseとも呼ばれます。ここでは、ifステートメントだけでなく、条件を指定するelseブロックにも条件を指定します。これは、最も一般的に使用される意思決定ステートメントです。
「if-statement」で指定された条件がfalseの場合、「elseステートメント」の条件が実行されます。
構文:
if (specify condition here) { // specify code to be executed here } else { // specify code to be executed here }
If-elseの例
以下の例では、if条件とelse条件の両方を指定しています。 ifブロックのprintステートメントは、ifブロックの条件が一致した場合にのみ実行されます。それ以外の場合は、elseブロックのprintステートメントが実行されます。
public class example { public static void main(String() args) { int a=10; // specified condition inside if statement if (a<=5){ /* * if the condition is satisfied then * print the below statement */ System.out.println('a is less than 5'); } else{ // otherwise print the below statement System.out.println('a is greater than 5'); } } }
出力:
以下に示すのは、投票の適格性をチェックするためのJavaプログラムです。最初に、Scannerクラスを使用してコンソールから入力年齢を取得しました。次に、if-elseステートメントを使用して年齢基準の条件付きチェックを追加しました。
入力年齢が18歳以上の場合、投票者は投票する資格があります。そうでない場合は投票できません。
import java.util.Scanner; public class example { public static void main(String() args) { int voter_age; System.out.println('Enter the age: '); // Taking input from the console Scanner in = new Scanner(System.in); voter_age = in.nextInt(); // conditional check for age criteria if(voter_age >= 18){ System.out.println('Voter is eligible to vote'); } else{ System.out.println('Voter is not eligible to vote'); } } }
出力:
それでは、次のプログラムの出力を推測して、説明を書いてみましょう。
import java.util.Scanner; public class example { public static void main(String() args) { int a,b; System.out.println('Enter the numbers: '); // Taking input from the console Scanner in = new Scanner(System.in); a = in.nextInt(); b = in.nextInt(); // conditional check for age criteria if(a == b){ System.out.println('a is equal to b'); } else if(b == a){ System.out.println('b is equal to a'); } } }
両方の状態に気づいたら、それらが同じであることに気付くでしょう。どちらの条件でも、aとbは同じです。ただし、このようなプログラムでは、最も外側のifステートメントが最優先されます。これが、このプログラムの出力が「aがbに等しい」になる理由です。
ここで、同じ条件を指定する別のifステートメントを追加すると(a == b)、最初/最も外側のifステートメントも実行されます。
ネストされたIfステートメント
ネストされたifステートメントは、あるifブロックが別のifブロック内に出現することを意味します。このようなステートメントでは、外側のifブロックが実行され、次に内側のifブロックが実行されます。
構文:
if (specify condition here) { // specify code to be executed here if (specify condition here) { // specify code to be executed here } }
ネストされたIfステートメントの例
以下の例では、複数のifステートメント(1つは他の内部)を使用しています。外側のifブロック条件が一致すると、内側のifブロック条件がチェックされます。
指定されたすべてのifブロック条件が真の場合、printステートメントが実行されます。
public class example { public static void main(String() args) { int a=10; int b=15; // specified condition inside if statement if (a>9){ // specified condition inside another if statement if(b>=10){ // print this only if both conditions are true System.out.println('This is nested if example'); } } } }
出力:
JavaIf-else-ifラダー
このラダーは、前の条件が失敗した後に新しい条件を指定するために使用されます。これは、1つのプログラムで複数の条件をチェックするために使用されます。ステートメントは、いくつかの条件を指定するifブロックで始まります。その後に複数のelseifステートメントが続きます。
つまり、最初の「if条件」が失敗した場合、次の「else-if条件」に記載されている条件を確認できます。
構文:
if (condition1) { // specify code to be executed here } else if (condition2) { // specify code to be executed here } .... else { // specify default code when all conditions are false }
JavaIf-else-ifラダーの例
以下の例では、変数ageを特定の数値または整数で初期化しました。次に、Javaのif-else-ifラダーを使用して、年齢を分類しようとしました。各カテゴリには、条件が満たされた場合または真の場合にのみ実行される1つのprintステートメントがあります。
最後に、すべての条件がfalseの場合に実行されるデフォルトのステートメントが1つあります。
public class example { public static void main(String() args) { int age= 92; // specified condition inside if statement if (age = 13 && age = 25 && age = 50 && age <100){ System.out.println('Old age'); } // default statement else { System.out.println('Uncategorized'); } } }
出力:
以下は、数値が正か負かをチェックするJavaプログラムです。最初に、Scannerクラスを使用してコンソールから番号を取得しました。次に、if-elseステートメントを使用して、ポジティブシナリオとネガティブシナリオの条件を確認しました。
最後に、上記の条件に一致しない場合は数値をゼロにする必要があると述べたデフォルトの条件を追加しました。
import java.util.Scanner; public class example { public static void main(String() args) { System.out.println('Enter the number: '); // Taking input from the console int num; Scanner in = new Scanner(System.in); num = in.nextInt(); // conditional check for age criteria if(num 0){ System.out.println('Positive number'); } else{ System.out.println('Number is zero'); } } }
出力:
以下はJavaプログラムです。最初は、Scannerクラスを使用してコンソールから3人の年齢を取得しました。次に、if構文を使用して条件付きチェックを実装し、一人称の年齢を他の2人と比較しました。
if-elseステートメントを使用してこの手順を繰り返し、3つすべてを他のすべてと比較しました。
最後に、3つすべての年齢が等しいことを考慮したデフォルトのステートメントを追加しました。上記の条件のいずれも満たされない場合、これが実行されます。
import java.util.Scanner; public class example { public static void main(String() args) { System.out.println('Enter the ages of John, Smith, and Federer: '); // Taking input from the console int John, Smith, Federer; Scanner in = new Scanner(System.in); John = in.nextInt(); Smith = in.nextInt(); Federer = in.nextInt(); // conditional check for age criteria if((John > Smith)&& (John> Federer)){ System.out.println('John is oldest'); } else if((Smith > John)&& (Smith> Federer)){ System.out.println('Smith is oldest'); } else if((Federer > John)&& (Federer> Smith)){ System.out.println('Federer is oldest'); } else{ System.out.println('They are of same age'); } } }
出力:
三項 オペレーター
Javaは、if-then-elseステートメントの代わりになる可能性のある三項演算子をサポートしています。この演算子を使用すると、if-elseステートメントで実行するのと同じタスクを実行できます。
「?:」で表されます。条件が真の場合、「?」の結果条件が返されます。それ以外の場合は、「:」の結果が返されます。
変数の結果とともに入力年を取得した以下の例を見てみましょう。この変数では、条件を「?」の中に入れています。入力年が4と400で割り切れるかどうかを確認し、100で割ったときに余りがゼロにならないようにします。
「?」内の状態の場合オペレーターが出会った場合はうるう年です。それ以外の場合はうるう年ではありません。
注意: 三項演算子の詳細については、 ここをクリック
public class example { public static void main(String() args) }
出力:
Javaif-elseの同等の例
上記の例では、年がうるう年であるかどうかを確認する方法を確認しました。このセクションでは、Javaのif-elseステートメントを介して同じことを行う同等のプログラムを作成します。
public class example { public static void main(String() args) { int yy=2020; if(((yy%4==0)&&(yy % 100 !=0)) || (yy % 400==0)){ System.out.println('The year is leap year'); } else{ System.out.println('The year is not leap year'); } } }
出力:
よくある質問
Q#1)JavaのElifとは何ですか?
回答: Elifは関数でもキーワードでもありません。また、Javaでは使用できません。 Javaでは、Elifはelse-ifステートメントの省略形に他なりません。 ifステートメントはelseなしで使用できますが、Elifはelseステートメントなしで使用することはできません。
Elifステートメントは条件付きステートメントであり、条件付きのifステートメントが1つあり、その後に、else-ifごとに条件が指定されたelse-ifステートメントが続きます。
Q#2)if / thenステートメントとif / then elseステートメントの違いは何ですか?
回答: 単純なifステートメントはif / thenステートメントとも呼ばれ、ifステートメントで条件が指定されています。条件が真の場合、ifステートメント内のコードが実行されます。
Javaのif-elseステートメントはif / then elseステートメントとして知られており、ifステートメントで条件が指定されています。この後にelseステートメントが続きます。 ifステートメントの条件がtrueの場合、ifステートメント内のコードが実行されます。それ以外の場合、elseステートメントが実行されます。
Q#3)Javaで==とはどういう意味ですか?
回答: ブール値の戻り値の型を持つ関係演算子です。 (相互に比較されている)変数の値が一致する場合はtrueを返し、一致しない場合はfalseを返します。
Q#4)ifステートメントに2つの条件を入れることはできますか?
回答: はい、ifステートメント内で任意の数の条件を指定できます。これは、「&&」、「||」、「==」などの論理演算子と関係演算子を使用して行われます。
Q#5)Javaで複数のifステートメントを使用できますか?
Windows7用のリモートデスクトップソフトウェア
回答: はい、Javaで複数のifステートメントを使用でき、各ifステートメントでテストするさまざまな条件を指定できます。
結論
このチュートリアルでは、単純なif条件、if-else条件、ネストされたif条件、if-else-ifラダー、およびif-elseと同等の例を使用した三項演算子を含むJavaif-constructのさまざまなバリエーションについて説明しました。それらのそれぞれは、適切な例、構文、およびそれが何をし、どのように動作するかについての説明で説明されています。
各バリエーションは、フローチャート図と、トピックをよりよく理解するのに役立つプログラミング例を使用して説明されています。
これは、後で説明するswitchステートメントやループなどの他の手法とは別に、Javaで条件付きチェックまたは意思決定を実行する最も一般的な方法です。
=> EasyJavaトレーニングシリーズをお読みください。