Java入门教程笔记03(程序流程控制)

目录

顺序结构 (系统默认流程)

 分支结构

if(3种格式)

switch分支

switch分支注意事项:  

switch的穿透性

循环结构

for 循环

for循环案例1

for循环案例2

 for循环案例3

 while循环

 while循环案例

 do-while循环

 三种循环的区别

 死循环

循环嵌套

 跳转关键字:break、continue

 break和continue的拓展知识点

 案例技术:随机数Random类

Random的使用

 猜数字游戏


顺序结构 (系统默认流程)

顺序程序默认流程

 分支结构

if(3种格式)

程序 根据判定的结果(真或假)决定执行某个分支的代码 默认流程
程序默认流程
顺序
顺序
结构
执行流程:
顺序
① 首先判断条件表达式的结果,如果 为true执行语句体 为 false 就不执行语句体
结构
顺序
注意事项:
结构
if 语句中, 如果大括号控制的只有一行代码,则大括号可以省略不写
顺序
结构

 

 

switch分支

结构 也是匹配条件去执行分支 , 适合做值匹配的分支选择,结构清晰,格式良好

1. switch 分支的格式、执行流程是怎么样的?
2. if switch 分支各自适合做什么业务场景?
if其实在功能上远远强大于switch。
if适合做区间匹配。
switch适合做:值匹配的分支选择、代码优雅。

switch分支注意事项:  

① 表达式类型 只能是byte、short、int、char ,JDK5开始支持枚举,JDK7开始支持String、
不支持double、float、long
② case给出的值不允许重复,且只能是字面量,不能是变量。
③ 不要忘记写break,否则会出现穿透现象

switch的穿透性

如果代码执行到没有写 break case ,执行完后将直接进入下一个 case 块执行代码( 而且不会进行任何匹配 ),直
到遇到 break 才跳出分支,这就是 switch 的穿透性。

循环结构

for 循环

控制一段代码反复执行很多次

for循环案例1

for循环案例2

 

 for循环案例3


public class 水仙花数 {

	/*
	 * 需求:在控制台输出所有的“水仙花数”,水仙花数必须满足如下2个要求:
	1. 水仙花数是一个三位数
	2. 水仙花数的个位、十位、百位的数字立方和等于原数
	 */
	public static void main(String[] args) {
		int count=0;
		for(int i=100;i<=999;i++) {
			int a=i%10;
			int b=i/10%10;
			int c=i/100%10;
			if(a*a*a+b*b*b+c*c*c==i) {
				System.out.println(i);
				count++;
			}
		}//for
		System.out.println("水仙花个数:"+count);
	}

}

 while循环

 

 

 while循环案例

 



public class while案例珠穆朗玛峰 {
	/*
	 * 世界最高山峰是珠穆朗玛峰(8848.86米=8848860毫米), 假如我有一张足够大的纸,
	 * 它的厚度是0.1毫米。请问,折叠多少次,可以折成珠穆朗玛峰的高度。
	 */
	public static void main(String[] args) {
		
		double peakHeight = 8848860; // 山峰高度
		double paperThickness = 0.1; // 纸张厚度

		int ans = 0;
		while (paperThickness < peakHeight) {
			paperThickness *= 2;
			ans++;
		}//while
		System.out.println(ans);
	}

}

 

 do-while循环

 三种循环的区别

 死循环

循环嵌套

 

 跳转关键字:break、continue

 breakcontinue的拓展知识点

 案例技术:随机数Random类

Random的使用

 


import java.util.Random;

public class 随机数Random {
    public static void main(String[] args) {
        Random r = new Random();

        int number = r.nextInt(10);
        System.out.println(number);

        System.out.println("------------------------------------");

        //65~100 =》(0~35) +65      范围35,从65开始
        for (int i = 1; i <= 35; i++) {
            int number2 = r.nextInt(36) + 65;
            System.out.print(number2 + " ");
        }
    }

}

 猜数字游戏


import java.util.Random;
import java.util.Scanner;

public class 猜数字游戏 {
    public static void main(String[] args) {
        Random r=new Random();
        int number=r.nextInt(100);
        Scanner sc=new Scanner(System.in);

        while(true){
            int i=sc.nextInt();
            if(i<number){
                System.out.println("过小");
            }else if(i>number){
                System.out.println("过大");
            }else {
                System.out.println("猜对了");
                break;
            }

        }//while
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值