流程控制语句和方法(概念)

控制语句

  • 选择结构
    主要的选择结构有:if选择结构和switch多选择结构。有如下结构:
    if单选择结构
    if-else双选择结构
    if-else if-else多选择结构
    switch结构

语法结构:

   if(布尔表达式){
        语句块
    }
  if语句对布尔表达式进行一次判定,若判定为真,则执行{}中的语句块,否则跳过该语句块。流程图如图3-1所示。

if单选择结构

public class Test1 {
	public static void main(String[] args) {
		//通过掷三个骰子看看今天的手气如何?
		int i = (int)(6 * Math.random()) + 1;//通过Math.random()产生随机数
		int j = (int)(6 * Math.random()) + 1;
		int k = (int)(6 * Math.random()) + 1;
		int count = i + j + k;
		//如果三个骰子之和大于15,则手气不错
		if(count > 15) {
			System.out.println("今天手气不错");
		}
		//如果三个骰子之和在10到15之间,则手气一般
		if(count >= 10 && count <= 15) { //错误写法:10<=count<=15
			System.out.println("今天手气很一般");
		}
		//如果三个骰子之和小于10,则手气不怎么样
		if(count < 10) {
			System.out.println("今天手气不怎么样");
		}
		System.out.println("得了" + count + "分");
	}
}

Math类的使用

  1.java.lang包中的Math类提供了一些用于数学计算的方法。

  2.Math.random()该方法用于产生一个0到1区间的double类型的随机数,但是不包括1。

    int i = (int) (6 * Math.random()); //产生:[0,5]之间的随机整数

注意

  1.如果if语句不写{},则只能作用于后面的第一条语句。 

  2.强烈建议,任何时候都写上{},即使里面只有一句话!

循环结构

循环结构分两大类,一类是当型,一类是直到型。

当型:

  当布尔表达式条件为true时,反复执行某语句,当布尔表达式的值为false时才停止循环,比如:while与for循环。

直到型:

  先执行某语句, 再判断布尔表达式,如果为true,再执行某语句,如此反复,直到布尔表达式条件为false时才停止循环,比如do-while循环。

for循环

语法结构:

for (初始表达式; 布尔表达式; 迭代因子) {
      循环体;
}

for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。for循环在第一次反复之前要进行初始化,即执行初始表达式;随后,对布尔表达式进行判定,若判定结果为true,则执行循环体,否则,终止循环;最后在每一次反复的时候,进行某种形式的“步进”,即执行迭代因子。

  A. 初始化部分设置循环变量的初值

  B. 条件判断部分为任意布尔表达式

  C. 迭代因子控制循环变量的增减

for循环在执行条件判定后,先执行的循环体部分,再执行步进。

嵌套循环

在一个循环语句内部再嵌套一个或多个循环,称为嵌套循环。while、do-while与for循环可以任意嵌套多层。

break语句和continue语句

在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。

break语句

public class Test16 {
    public static void main(String[] args) {
        int total = 0;//定义计数器
        System.out.println("Begin");
        while (true) {
            total++;//每循环一次计数器加1
            int i = (int) Math.round(100 * Math.random());
            //当i等于88时,退出循环
            if (i == 88) {
                break;
            }
        }
        //输出循环的次数
        System.out.println("Game over, used " + total + " times.");
    }
}

continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
注意事项

  1. continue用在while,do-while中,continue 语句立刻跳到循环首部,越过了当前循环的其余部分。

  2. continue用在for循环中,跳到for循环的迭代因子部分。

continue语句:把100~150之间不能被3整除的数输出,并且每行输出5个

public class TestContinue {
    public static void main(String[] args) {
        int count = 0;//定义计数器
        for (int i = 100; i < 150; i++) {
            //如果是3的倍数,则跳过本次循环,继续进行下一次循环
            if (i % 3 == 0){
                continue;
            }
            //否则(不是3的倍数),输出该数
            System.out.print(i + "、");
            count++;//没输出一个数,计数器加1
            //根据计数器判断每行是否已经输出了5个数
            if (count % 5 == 0) {
                System.out.println();
            }
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值