JAva基礎5:Java分岐構造と循環構造


1、条件文
1)  if
2)  if...else
3)  switch...case:複数の値の式を評価します.次の式に続いて、式の値を値リストに基づいてテストします.
	private void testswitch(int day)
	{
		switch(day)//           (     、  、     (final  ))
		{
		   case 1:
			   System.out.println("   ");
			   break;//     switch  ,     ,         ,            ,        case   break
		   case 2:
			   System.out.println("   ");	
			   break;
		   default://    
			   System.out.println("       ");
		}
	}

2、循環構造:
1)  forサイクル、固定回数サイクル:
	private int getSum()
	{
		int sum=0;
		//for       :     ;         ;         
		 for(int i=1;i<100;i++)//      
		 {
 			sum=sum+i;
		}
 		return sum;
 	}

breakを使用してループを停止します.
	private void testFor()
	{
		//  1-100       37    
		for(int i=1;i<100;i++)//      
		{
			if(i%37==0)
			{
				System.out.println("i");
			}
			break;//  、      
		}		
	}

continue:そのループを終了し、次のループを続行します.continueの後のコードは実行されません.
	private void testFor2()
	{
		//  1-20   3    
		for(int i=1;i<=20;i++)//      
		{
			if(i%3==0)
			{
				continue;//  、      ,       ,continue         
			}
			System.out.println("i");			   
		}		
	}

2)  while、一定回数サイクルではなく、まず条件が満たされているかどうかを判断し、満たさなければサイクルを実行しない:
	private void testWhile()
	{
		int i=1;
		int sum=0;
		while(i<=100)//           ,       ,     
		{
			sum+=i;
			i++;
		}
		boolean isOK=true;
		while(isOK)
		{
			System.out.println("  ");
			isOK=false;			
		}
	}


3)  do...while、一定回数サイクルではなく、先に実行してから判断します.
        private void testDoWhile()
	{
		int i=1;
		int sum=0;
		do//   do   ,     ,       
		{
			sum+=i;
			i++;
		}while(i<=100);//           ,       ,     
	}

4)ループネスト
private void testNestedFor()
{
	for(int i=1;i<=4;i++)
		for(int j=1;j<=4;j++)
		{
			System.out.print("*");
		}
	System.out.println();
}

5)再帰:一つの方法は自分で自分を呼び出す
import java.util.Scanner;

public class Factorial {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int n=0;
		Scanner sc=new Scanner(System.in);
		System.out.println("        :");
		n=sc.nextInt();
		//    
		Factorial f=new Factorial();
		int m=f.js(n);
		System.out.println(m);
		sc.close();
	}
	private int js(int n){
		if(n==1)
		{
			return 1;
		}else
		{
			return js(n-1)*n;
		}
	}
}