JAVAの繰り返し文 while
whileの()には条件だけを入れるので、while内で条件のカウントする。i++
class Test{ public static void main(String args[]){ int i = 1; while(i < 5){ System.out.println(i); /* //ループを抜ける時はbreak if(条件式){ break; } //ループを次のループに移る時はcontinue if(条件式){ cntinue; } */ i++; } } }
while(true)とすると無限ループなる。
ラベルを付けて、ループから抜けた時、ラベルへ移動する。
class Test{ public static void main(String args[]){ int i = 1,x=1; labeldayo: while(i < 5){ System.out.println(i); i++; while(x < 5){ System.out.println("-"+x); x++; if(x==3){ x=1; continue labeldayo; } //x++;無限ループ } //i++;無限ループ } } }
JAVAの繰り返し文 for
class Test{ public static void main(String args[]){ for(int i=1; i<5; i++){ System.out.println(i); /* //ループを抜ける時はbreak if(条件式){ break; } //ループを次のループに移る時はcontinue if(条件式){ cntinue; } */ } } }
for(int i; ;i++) 中の条件をかかない場合は無限ループになる。
forの拡張
配列を繰り返し処理してくれる
for(型 変数 : 配列){
}
class Test{ public static void main(String args[]){ int ia[] = {3,4,2,6,8,2,4}; for(int v:ia ){ System.out.println(v); } } }
for each のようなことができるんだ。
ラベルを付けて、抜け出た後、ラベルへ移動してそこからまたループする。
class Test{ public static void main(String args[]){ labeldayo://■ここ for(int i=1;i<5;i++){ System.out.println(i); for(int x=1;x<5;x++){ System.out.println("-"+x); if(x==3){ x=1; continue labeldayo;//■ここ } } } } }
無限ループで値が走り出したら、Ctrl + c でストップします。
JAVAの条件分岐 switch
class Test{ public static void main(String args[]){ switch (args.length){ case 1: System.out.println("1つ"); break; case 2: System.out.println("2つ"); break; case 3: System.out.println("3つ"); break; case 4: System.out.println("4つ"); break; case 5: System.out.println("5つ"); break; default: System.out.println("5こえた"); break; } } }
>java Test3 aa aa aa aa aa aa
switch(ここ)は、byte、short、int、char、enum 型の変数または定数を使う。
default:は必要なければ省略することができる。
JAVAの条件分岐 if
もし (何々だったら){
こんなことする
}
ifもし(i>0 iが0より大きかったら){
System.out.println("何か入ってる");とひょうじする
}
class Test{ public static void main(String args[]){ if (args.length > 0){ System.out.println("何か入ってる"); } } }
>java Test sss 何か入ってる
のような感じで、もっと条件分岐をつけたら、
class Test{ public static void main(String args[]){ if (args.length > 1){ System.out.println("何か入ってる"); }else if(args.length > 5){ System.out.println("5こえた"); }else{ System.out.println("ひきすうくれ"); } } }
>java Test3 aa aa aa aa aa aa 5こえた
else if や else も使える
JAVAの演算子の優先順位
上ほど先に処理され
++ -- + - ~ ! () インクリメント プラス マイナス キャスト * / % 乗算 除算 剰余 + - 加算 減算 << >> >>> シフト < > <= >= instanceof 比較 型比較 == != 等価 & ^ | ビット && || 論理 ?: 条件 = *= /= %= += -= <<= >>= >>>= 代入 複合 &= ^= |=
の順番で、先に処理したい時は、()で囲むことで先に処理してくれます。
JAVAの論理演算子
! && ||
複数の条件を一つの条件として評価する。 答えはTrueかFalse
例えば、
class Test{ public static void main(String args[]) { int a=5,b=2,c=6,d=4,e=5; System.out.println(a>b || c>d) ; //true; System.out.println(a<c && a==e); //true; System.out.println(!(a==e)) ; //true; !は右辺の逆に評価 } }
& | ^ ~
ビット単位の論理演算子