Javaの判断と循環文
21061 ワード
判断文
if判断文第一のフォーマット: if(条件式){実行文}
実行順序:ifに会った場合:条件式が真であれば、括弧内の文を実行します。偽の場合は、全セグメントif文をスキップして、後の文を実行します。
Created with Raphaël 2.0主関数開始if(条件式)?実行文のメイン関数終了yes no第二のフォーマット:if(条件式){実行文}else{実行文;}
Created with Raphaël 2.0主関数開始if(条件式)if括弧の文主関数終了else括弧の文yes no第3のフォーマット:if(条件式){実行文}else if(条件式){実行文;}…else{実行文;}
Created with Rapha l 2.2.0主関数開始if 1(条件式)if括弧の文主関数終了else 1括弧の文if 2(条件式)if 2括弧の文else 2括弧の文yes no
マルチ分岐構造(switch)フォーマット:switch(表現){case取得値1:実行文;break caseの値2:実行文;break;default:実行文;break;
メイン関数の実行を開始した時に、switchでswitchの表現をcaseの後の表現と比較してcaseの後の表現と同じ語句を実行します。もしcaseの後ろに全部ないなら、defaultの後の文を実行します。
メイン関数の開始
case 1
case 2
default
メイン関数の終了その選択できるタイプは四つしかないです。byte、shot、int、char ★★★★注意:switch文のcaseの後にbreakが文を飛び出す必要があります。そうでなければ、プログラムはbreakが飛び出すまで次のcaseを実行し続けます。 caseとdefaultは順番がなく、最初のcaseを先に実行し、マッチングしていないcaseはdefault を実行する。
ifとswitchの違い ifは、数値を判断するために使用され、また、区間を判断するために使用され、その式の結果がbollanタイプ であることが要求される。 switchは、固定されたいくつかの値を判断するために使用される 。
サイクル構造(whileとdo-while)フォーマット:while(条件式){実行文}
注意事項:1.括弧内の表式計算結果は必ずbollanタイプの値でなければなりません。2.括弧の中で直接false定数を書いてはいけません。3.whileループの括弧の後ろにセミコロンを書かないでください。循環制御の文のコードは大括弧で広がります。4.while循環制御の条件変数は必ず更新し、循環が正常に終わることを保証する(死循環防止)フォーマット:do{実行文}while(条件式);
循環構造(for) forサイクルフォーマット:for(初期化式(1);循環条件式(2)ループ後の操作式(3){実行文](4)}
forとwhileの違いforは、知っている回数のサイクル(既知の条件に従って循環する)に傾向があり、whileは回数を知らないサイクルに傾向がある。
フロー制御(breakとcontine)
break:この層の循環を終了して、循環を抜け出して、もう次の循環continueを実行しません。この層の循環をスキップして、次の層の循環を続けて、循環回数は1つ減らします。
breakの例:
if判断文
class Demo {
public static void main(String[] args) {
int a = 1;
if( a > 0){
System.out.println(" ");
}
System.out.println(" ");
}
}
if後の丸括弧の中の条件式は必ずbootleanタイプで、真偽の判定を行います。実行順序:ifに会った場合:条件式が真であれば、括弧内の文を実行します。偽の場合は、全セグメントif文をスキップして、後の文を実行します。
Created with Raphaël 2.0主関数開始if(条件式)?実行文のメイン関数終了yes no
class Demo {
public static void main(String[] args) {
int a = 1;
if( a > 0){
System.out.println(" ");
}else{
System.out.println(" ");
}
}
}
実行順序:出会いif:条件式が本当なら、ifの後ろの括弧の中の値を実行します。条件式が偽の場合は、elseの後ろにある括弧の値を実行します。Created with Raphaël 2.0主関数開始if(条件式)if括弧の文主関数終了else括弧の文yes no
import java.util.*;
class class05{
public static void main(String[] arge){
//num1 num2
Random random=new Random();
Scanner scanner=new Scanner(System.in);
int num1=random.nextInt(90)+10;
//System.out.println(num1);
System.out.print("Please inter a number:");
int num2=scanner.nextInt();
//
int a=num1/10;
int b=num1%10;
int c=num2/10;
int d=num2%10;
//
if(num1==num2){
System.out.println(" , 10000 ");
}else if(a==d&&b==c){
System.out.println(" , 3000 ");
}else if(a==c||a==d||b==c||b==d){
System.out.println(" , 1000 ");
}else{
System.out.println(" , ");
}
}
}
実行順序:if-else文の入れ子文であり、最初のifで条件を満たさないelse条件で条件を追加しました。Created with Rapha l 2.2.0主関数開始if 1(条件式)if括弧の文主関数終了else 1括弧の文if 2(条件式)if 2括弧の文else 2括弧の文yes no
マルチ分岐構造(switch)
class demo{
public static void main(String[] ager){
int i=6;
switch(i){
case 1:
System.out.println("no 1");
break;
case 4:
System.out.println("no 4");
break;
case 6:
System.out.println("yes!");
break;
default:
System.out.println("not right");
break;
}
}
}
実行順序:メイン関数の実行を開始した時に、switchでswitchの表現をcaseの後の表現と比較してcaseの後の表現と同じ語句を実行します。もしcaseの後ろに全部ないなら、defaultの後の文を実行します。
メイン関数の開始
case 1
case 2
default
メイン関数の終了
ifとswitchの違い
サイクル構造(whileとdo-while)
class demo{
public static void main(String[] ager){
int i=6;
while(i>0){ //
System.out.println("I 1");
i--;
}
}
実行順序:メイン関数の実行を開始し、whileが発生した場合、まずwhileの後の条件式を計算します。表式が本当の場合、whileの後ろの大かっこの中の文を実行します。そして、whileの後の表現判断を行います。式が偽の場合は、ループが飛び出すまでです。注意事項:1.括弧内の表式計算結果は必ずbollanタイプの値でなければなりません。2.括弧の中で直接false定数を書いてはいけません。3.whileループの括弧の後ろにセミコロンを書かないでください。循環制御の文のコードは大括弧で広がります。4.while循環制御の条件変数は必ず更新し、循環が正常に終わることを保証する(死循環防止)
do{
sel=sel+(int)(num%10);
num/=10;
if(num==0){
break;
}
}while(true);
実行順序:先にdoの後の文を実行して、実行が終わったら条件式に進んで判断します。条件式の結果がtrueである場合、doの後の文を実行し続けます。条件式の結果がfalseであれば、ループを終了します。ドwhileは条件が満たされていても、循環体は少なくとも一回実行されるのが特徴です。循環構造(for)
for(int i=0;i<num.length();i++){
char c=num.charAt(i);
if(isnumber(c)){
count++;
}
}
実行順序:for内の3つの表式の動作の順番は、表式を初期化して1回だけ読み取り専用で、循環条件を判断し、本当に循環体を実行してから循環後の操作式を実行します。続いて循環条件を判断し、条件が満たされないまで過程を繰り返します。forとwhileの違いforは、知っている回数のサイクル(既知の条件に従って循環する)に傾向があり、whileは回数を知らないサイクルに傾向がある。
フロー制御(breakとcontine)
break:この層の循環を終了して、循環を抜け出して、もう次の循環continueを実行しません。この層の循環をスキップして、次の層の循環を続けて、循環回数は1つ減らします。
breakの例:
if(s1.charAt(i)==s2.charAt(j)){
i=i+j;
}else{
break;
}
// break ,
contineの例:if(s1.charAt(i)==s2.charAt(j)){
i=i+j;
}else{
continue;
j+=1;
}
// continue , j+=1; ,