java基础五:Java分支结构和循环结构

本文详细探讨了Java编程中的分支结构,包括if条件判断和switch...case多条件选择,以及循环结构,如for循环的固定次数迭代和do...while循环的先执行后判断特性。通过实例解析,帮助读者深入掌握Java控制流程的关键概念。
摘要由CSDN通过智能技术生成
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)递归:一个方法自己调用自己

<span style="font-size:10px;">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;
		}
	}
}</span>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值