零基础学Java(流程控制)

流程控制

顺序结构

程序进入主方法之后依次执行里面的代码 。

选择结构

if

单分支
语法结构

if(表达式.boolean值){
执行语句;
}

执行顺序:

  1. 判定表达式的值,如果表达式的值位true执行对应的执行语句
  2. 表达式值是false 整个if语句都不执行
注意事项
  • 当if分支中存在单条语句时可以省略大括号。
  • 当整个if的表达式无论真假,执行之后都会执行后续代码
  • 以后大多数的逻辑不单单只有两种情况。
  • 单分支结构永远只能保证一种情况下会做什么操作。
代码样例
public class Demo01{
	public static void main(String[] args){
		if(4<3){
		//System.out.println("我被执行了 if执行语句");
		System.out.println("3");
		}
		System.out.println("我是main方法中的执行语句");
	}
}
双分支
语法结构

if(boolean值表达式){
执行语句1;
}else{
执行语句2;
}

执行顺序:

  1. 判定表达式的结果,如果表达式的结果是true执行对应的执行语句1.
  2. 如果表达式的结果是false 那么执行对应的执行语句2 .
注意事项
  • 可以省略大括号 保证执行语句只有一行即可
  • 整个判定结果结束执行,执行语句执行之后继续执行后续代码
代码样例
public class Demo02{
    public static void main(String[] args){
        //猜数小游戏
        //声明一个变量存放结果
        int result = 29;
        //声明一个变量模拟存放用户输入的值
        int inputNum = 30;
        //String msg = result==inputNum?"恭喜你猜对了":"捞。。。";
        //System.out.println(msg);
        if(result==inputNum){
            System.out.println("恭喜你猜对了");
        }else{
            System.out.println("捞。。。");
        } S
            ystem.out.println("哈哈哈啊哈");
    }
}
多分支
语法结构

if(表达式1){
执行语句1;
}else if(表达式2){
执行语句2;
}else if(表达式3){
执行语句3;
}else if(表达式4){
执行语句4;
}…{
}else{
执行语句n;
}

执行顺序:

  1. 判定表达式的结果,如果表达式的结果是true执行对应的执行语句。整个多分支结果执行结束。
  2. 依次判定后续的else if,只要有一个判定结果是true那么整个多分支结束。
  3. 如果所有的判定条件都为假,执行最后的else内容。
注意事项
代码样例
/** 
	提示用户输入一个整数。如果该整数是5的倍数,打印“5的倍数”如果是2的倍数打印“2的倍数” 
	*/  
import java.util.Scanner;  
public class Text02{  
    public static void main(String[] args){  
        //获取键盘上输入的数  
        Scanner input = new Scanner(System.in);  
        //提示用户输入一个数  
        System.out.println("请输入一个整数:");  
        int inputNum = input.nextInt();  
        //判断这个数是否是2的倍数也是5的倍数  
        if(inputNum%5==0&&inputNum%2==0){  
            System.out.println("输入数是2的倍数也是5的倍数");  
        }else if(inputNum%5==0){   //判断这个数是否是5的倍数  
            System.out.println("输入数是5的倍数");  
        }else if(inputNum%2==0){  //判断这个数是否是2的倍数  
            System.out.println("输入数是2的倍数");  
        }else{  
            System.out.println("输入数既不是2的倍数也不是5的倍数");  
        };  

    }  
} 

switch

语法结构

switch(表达式){
case 值1:
执行语句1;
break;
case 值2:
执行语句2;
break;
case 值3:
执行语句3;
break;

default:
执行语句3;
}

  • 首先计算switch中的表达式的值然后依次匹配对应的case,如果匹配成功,执行对应的执行语句
  • 这里注意要通过break防止穿透
  • 如果所有的case都不匹配执行最后的default
注意事项
  1. 防止case穿透
  2. 利用case穿透做些文章
  3. 将没有罗列出来的情况通过default去编写
  4. switch只能做等值判定 if可以做区间判定
  5. default位置可以任意 一般放到最后
  6. switch表达式值不能是long float double boolean 类型
  7. jdk1.5之后允许switch中存放枚举类型enum
  8. jdl1.7之后允许switch中存放String类型,保证case也是String类型
  9. jdk12之后 修改switch的写法–>扩展练习
代码样例
/**
根据月份,输出对应的季节,并输出至少两个描述该季节的成语和活动。
*/
import java.util.Scanner;
public class Text06{
	public static void main(String[] args){
		Scanner input = new Scanner(System.in);
		//提示用户输入一个月份
		System.out.println("请输入一个月份");
		//定义一个接受用户输入值的变量
		int inputMonth = input.nextInt();
		//利用switch语句判断生成的月份是那个季节
		switch(inputMonth){
			case 3:
			case 4:
			case 5:
				System.out.println("春天--春意盎然  春暖花开--植树 踏青");
				break;
			case 6:
			case 7:
			case 8:
				System.out.println("夏天--烈阳高照  夏日炎炎--吃冰棍 游泳");
				break;
			case 9:
			case 10:
			case 11:
				System.out.println("秋天--秋高气爽 一叶知秋--郊游 登高");
				break;
			case 12:
			case 1:
			case 2:
				System.out.println("冬天--阳春白雪  冬日暖阳--打雪仗 堆雪人");
				break;
		}
	}
}

循环结构

do-while

语法结构

do{
循环体;
}while(循环条件);

执行顺序:

  1. 先执行循环体一次.
  2. 再判定循环条件,如果条件为真执行循环体1次.
  3. 再次判定循环条件,直到循环条件不满足,整个循环结束。
注意事项
  • while先判定在执行
  • do-while先执行在判定
代码样例
public class Demo06{
	public static void main(String[] args){
		
		//1声明变量存放结果
		int sum = 0;
		//2声明变量存放1-100之间的数
		int num = 1;
		
		do{
			sum+=num;
			num++;
		}while(num<=100);
			
		System.out.println(num+"=="+sum);
		
		
	}
}

while

语法结构

while(循环条件|表达式){
循环体;//执行语句
}

执行顺序:

  • 判定循环条件,如果条件为真执行循环体1次
  • 再次判定循环条件,直到循环条件不满足,整个循环结束。
注意事项
  • 凡是不确定循环次数就可以优先考虑while循环.
代码样例
public class Demo05{
	public static void main(String[] args){
		
		//1声明变量存放结果
		int sum = 0;
		//2声明变量存放1-100之间的数
		int num = 1;
		while(num<=100){
			sum+=num;
			num++;
		}
			
		System.out.println(num+"=="+sum);
		
		
	}
}

for

语法结构

for(循环变量;循环条件;改变循环变量的表达式){
循环体;
}

执行顺序:

  1. 声明循环变量 (降低生命周期 调高内存利用率).
  2. 判定循环条件 如果循环条件为真,执行循环体一次.
  3. 改变循环变量的值,判定循环条件,直到循环条件不满足整个循环结束.
注意事项
  • 确定循环次数可以使用for循环.
代码样例
public class Demo07{
	public static void main(String[] args){
		//声明存放结果
		int sum = 0;
		for(int num=1;num<=100;num++){
			sum += num;
		}
		System.out.println(sum+"=="+num);
	}
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值