[JavaSE]:9、Java条件文-if...else

12131 ワード

if文は、1つのブール表現と1つまたは複数のステートメントを含んでいます。
文法if文の文法は以下の通りです。
if(     )
{
   //        true      
}
論理式の値がtrueであれば、if文のコードブロックを実行します。そうでなければ、if文ブロックの後のコードを実行します。
Test.javaファイルコード:
public class Test {
 
   public static void main(String args[]){
      int x = 10;
 
      if( x < 20 ){
         System.out.print("   if   ");
      }
   }
}
以上のコードのコンパイルの結果は以下の通りです。
   if   
if…else文
if文の後にelse文があり、if文のブール表現値がfalseである場合、else文ブロックが実行されます。
文法if…elseの使い方は以下の通りです。
if(     ){
   //          true
}else{
   //          false
}
実例
Test.javaファイルコード:
public class Test {
 
   public static void main(String args[]){
      int x = 30;
 
      if( x < 20 ){
         System.out.print("   if   ");
      }else{
         System.out.print("   else   ");
      }
   }
}
以上のコードのコンパイルの結果は以下の通りです。
   else   
if...else if...else文
if文の後ろにelse if...else文があります。この文は様々な可能性を検出できます。
if、else if、else文を使う場合、以下の点に注意してください。
if文は最大1つのelse文があり、else文は全てのelse if文の後にある。if文にはいくつかのelse if文がありますが、それらはelse文の前になければなりません。一つのelse if文がtrueと検出されると、他のelse if及びelse文はスキップして実行されます。構文
if...else       :

if(      1){
   //        1   true    
}else if(      2){
   //        2   true    
}else if(      3){
   //        3   true    
}else {
   //            true    
}
実例
Test.javaファイルコード:
public class Test {
   public static void main(String args[]){
      int x = 30;
 
      if( x == 10 ){
         System.out.print("Value of X is 10");
      }else if( x == 20 ){
         System.out.print("Value of X is 20");
      }else if( x == 30 ){
         System.out.print("Value of X is 30");
      }else{
         System.out.print("   else   ");
      }
   }
}
以上のコードのコンパイルの結果は以下の通りです。
Value of X is 30
入れ子のif…else文
入れ子のif…else文を使うのは合法的です。つまり、もう一つのifまたはelse if文でifまたはelse if文を使ってもいいです。
文法ネストのif...else文法フォーマットは以下の通りです。
if(      1){
   ////        1   true    
   if(      2){
      ////        2   true    
   }
}
if文のようにelse if...elseをネストすることができます。
実例Test.javaファイルコード:
public class Test {
 
   public static void main(String args[]){
      int x = 30;
      int y = 10;
 
      if( x == 30 ){
         if( y == 10 ){
             System.out.print("X = 30 and Y = 10");
          }
       }
    }
}
以上のコードのコンパイルの結果は以下の通りです。
X = 30 and Y = 10