Java での条件文とループ構造の使用方法の詳細な紹介

零下一度
リリース: 2017-06-25 11:01:26
オリジナル
2298 人が閲覧しました

他のプログラミング言語と同様に、Java は条件文とループ構造を使用して制御の流れを決定します。この記事では、条件、ループ、スイッチについて簡単に説明します。

1. ブロックスコープ

Block(ブロック)、つまり複合文。これは、中括弧で囲まれたいくつかの単純な Java ステートメントを指します。ブロックは変数のスコープを決定します。

例:

 1 public class Code { 2 static 3 { 4     System.out.println("1"); 5 } 6 { 7     System.out.println("2"); 8 } 9 public Code()10 {11     System.err.println("3");12 }13 public static void main(String[]args)14 {15     new Code();16 }17 }
ログイン後にコピー

注: 同じ名前の変数を 2 つのネストされたブロックで宣言することはできません。

2. 条件文

形式 1:

if(条件)

{

statement1

statement2

....

}

例:

1 if(youSales>=target)2 {3    performance="Satisfactory";4    bonus=1000;5 }
ログイン後にコピー

フォーマット 2:

if (条件) ステートメント 1 else ステートメント 2

例:

 1 if(youSales>=target) 2 { 3   performance=“Satisfactory”; 4   bonus=100+10*(youSales-target“); 5  } 6 else 7 { 8   performance=”Unstatisfactory“; 9   bonus=0;10 }
ログイン後にコピー

3. ループ

条件が true の場合、while ループが実行されます。

形式 1:

while (条件) statemnet

例:

1 while (balance<goal)2 {3 balance+=payment;4 double interest=balance*interestRate/100;5 balance+=interest;6 years++;7 }
ログイン後にコピー

形式 2:

do ステートメント while(条件); 更新されるカウンターまたは同様の変数を使用する一般的な構造。各反復後に反復回数を制御します。

形式は次のようになります:

for (int i=0; iSystem.out.println(i);

4 例:

 1 do 2     { 3         balance+=payment; 4         double interest=balance*interestRate/100; 5         balance+=interest; 6          7         year++; 8          9         System.out.printf("After year %d,your balance is %,.2f%,year,balance");10         11         System.out.print("Ready to retire?(Y/N)");12         input=in.next();13     }14     while(input.equals("N"));15 16     }
ログイン後にコピー

 1 public class ShuZu1 { 2     public static void main(String[]args){ 3         int [][] x={{1,2,2,2,2},{3,3,3,3,3},{4,5,-1,17,55}}; 4         int result=qiuHe(x); 5         System.out.println("和是"+result); 6         } 7     public static int qiuHe(int[][]x){ 8         int s=0; 9         for(int i=0;i<x.length;i++)10         {11             for(int j=0;j<x[i].length;j++)12             {13                 s+=x[i][j];14                 }15             }16         return s;17     }18 }
ログイン後にコピー

 1 public class ShuZu2 { 2     public static void main(String[]args){ 3         int [][] x=new int[7][7]; 4         //生成随机数组,注意没有返回值,另外打印一行字 5         suiJi(x); 6         System.out.println("生成的数组是:"); 7          8         //显示数组内容,注意没有返回值 9         showArray(x);10         11         //取值12         float result=getAvg(x);13         System.out.println("平均数是"+result);14         15     }16     static float getAvg(int [][] x){17         float s=0;18         for(int i=0;i<x.length;i++){19             for(int j=0;j<x[i].length;j++){20                 s+=x[i][j];21             }22         }23         return s/(x.length*x[0].length);24     }25     static void suiJi (int[][]x){           //这里我出错了。返回值写了int型,不应该的。思考一下。26         for(int i=0;i<x.length;i++){27             for(int j=0;j<x[i].length;j++){28             x[i][j]=(int)(Math.random()*10);29             }30         }31     }32     static void showArray(int[][]x){        //这里我出错了。返回值写了int型,不应该的。思考一下。33         for(int i=0;i<x.length;i++){34             for(int j=0;j<x[i].length;j++){35                 System.out.print(x[i][j]+"\t");// 给数据空格36             }37             System.out.println();//打印换行38         }39     }40 }
ログイン後にコピー

 1 import java.util.Arrays; 2 public class SuZu3{ 3     public static void main(String[] args) { 4         int [] x={2,-1,7,777,6,764,85896,65554,0,874785,417825,74};    
 5         sort(x,'n'); 6         for(int i=0;i<x.length;i++){ 7             System.out.print(x[i]+"\t"); 8             } 9         }10     //给数组进行选择性排序11     //调用API进行升序12     static void sort(int[]x,char Flag){13         if('A'==Flag){14             Arrays.sort(x);15             }16         else {17             for(int i=0;i<x.length-1;i++){18                 for(int j=0;j<x.length-1-i;j++){19                     int temp=0;20                     if(x[j]<x[j+1]){21                         temp=x[j];22                         x[j]=x[j+1];23                         x[j+1]=temp;24                         }25                     }26                 }27             }28         }29     }
ログイン後にコピー
5. 複数選択: switch ステートメント
形式は次のようになります。
ケース 2:
....
break;

....

//さらにいくつかのケースを使用できます (break で終了します)

デフォルト:

... ..

break;

注:

case ラベルは次のようになります:

* char、byte、short、または int 型の定数式。

* Enum 定数

* Java SE 7 以降では、case ラベルを文字列リテラルにすることもできます。

以上がJava での条件文とループ構造の使用方法の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート