第四章:控制结构

第四章:控制结构

  1. 顺序
    1.1 介绍
    顺序控制:程序从上到下执行,中间没有跳转和判断。
  2. 分支
    2.1 介绍
    让程序有选择的执行。
    单分支 if();
    双分支 if()—;else—;
    多分支 if()—;else if()—;else—;
    switch
    2.3 switch细节:
    表达式数据类型,应和case后的常量保持一致。
    或者可以自动转换成可以相互比较的类型。
    switch表达式的返回值必须是(byte,short,int,char,enum,string)
    不可以是浮点型
    case字句中的值必须是常量或常量表达式,不能是变量。
    case num : System.out.println(“num是变量!”); // 编译不通过。
    default子句可以不写,当没有case满足时执行default。
    如果没有default则直接break;跳出switch。
    如果没有写break;程序会顺序执行到结尾;(case穿透)
    2.4 switch例子:
    // 对学生成绩大于60的输出合格,小于60的输出不合格
    // 成绩最大100分
    // [60,100] 合格,[0,60) 不合格。
    // 想法:用(int)score / 60,如果score = 1 合格, = 0不合格。
    2.5 switch和if的选择:
    如果要判断的情况不多,且符合(byte,short,int,char,enum,string)几种类型,就用switch。
    其他情况: 对区间进行判断、对结果为boolean判断,建议用if,if的范围更广。
  3. 循环(for、while、do while)
    3.1 介绍
    可以使代码重复执行。
    3.2 基本语法:

for(循环变量初始化;循环条件;循环变量迭代){
循环操作(可以多条语句);
}

说明
for循环四要素:①变量初始化,②循环条件,③循环操作语句,④循环变量迭代。
细节
循环条件是一个返回值为boolean的表达式。
可以写成 for(;循环判断条件;),其中的初始化和变量迭代可以写到其他地方。但是;一个都不可以丢。
循环初始值可以有多条初始化语句,但要求一样,并且中间用逗号隔开。
循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开。
eg1:
int i = 1;
for(; i <=10;){
System.out.println(“第”+i+“次循环!”);
i++;
}

eg2:

for(int i = 1,int j = 2 ; )
for(;😉;表示一个死循环。
解for循环: 【化繁为简,先死后活。】
化繁为简:将复杂的需求拆解成简单的需求,逐步完成。
先死后活:先考虑固定的值,然后转成变量。
3.1 while循环
基本语法
循环变量初始化;
while(循环条件){
循环体(语句);
循环变量迭代;
};
说明:while也有4要素,只是4要素存在的位置不一样。
4. break
1.1 介绍
终止循环
如果不用标签的话:break终止它当前的循环(它自己被包含在哪个循环就终止哪个)
如果用了标签:终止标签段的循环。
public static void main(String[] args){
String name = “”;
String pass = “”;
int chance = 3;
Scanner sc = new Scanner(System.in);
for( int i = 1; i <= 3; i++){
System.out.println(“请输入您的用户名:”);
name = sc.next();
System.out.println(“请输入您的密码:”);
pass = sc.next();
if( “刘畅”.equals(name) && “666”.equals(pass) ){
System.out.println(“登录成功~”);
break;
}
chance --;
System.out.println(“用户名或密码错误,您还有”+chance+“次机会。”);
}

}
  1. continue
    1.1 介绍
    跳出本次循环:
    如果不用标签的话:continue结束它当前的这次循环(它自己被包含在哪个循环就结束哪个)
    如果用了标签:结束标签段的循环。
    public static void main(String[] args){
    label01:
    for(int j = 0; j < 4; j++){
    for(int i = 0; i <= 10; i++){
    if(i == 2){
    continue label01;
    }
    System.out.println("i = "+i); // 打印4遍[0,1]
    }
    }
    }
  2. return
    1.1 介绍
    使用在普通方法上:
    结束这个方法。
    使用在main方法上:
    结束程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值