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; !は右辺の逆に評価
     }
 }
& | ^ ~

ビット単位の論理演算子