Java基础——基本语法----流程控制

一、流程控制分类

  1. 顺序结构:程序从上到下执行
  2. 分支结构:根据条件,选择性的执行某段代码
    (1)if-else
    (2)switch-case
  3. 循环结构:根据循环条件,重复性执行某段代码
    (1)for
    (2)while
    (3)do-while
    (4)增强for循环(集合的时候讲)
    二、分支结构
  4. if-else条件判断结构
    结构:
    if(条件表达式){
    执行语句1;
    }else if(条件表达式){
    执行语句2;
    }else if(条件表达式){
    执行语句3;
    }
    ……
    else {
    执行语句n;
    }
    【说明】
    (1)esle结构是可选的
    ※ 如果多个条件表达式之间没有任何交集,此时多个表达式声明顺序没有区别
    ※ 如果多个条件表达式之间有交集,此时多个表达式声明顺序有区别,根据实际情况而定
    ※ 如果条件表达式之间是包含关系,若希望范围小的有机会执行,则要先声明范围小的条件表达式
    (2)if-else结构可以相互嵌套
    (3)如果执行语句中只有一条执行语句,{}可以省略,但是不建议省略
    (4)else就近配对
  5. switch-case条件判断语句
    switch(表达式){
    case 常量1:
    语句1;
    break;
    case 常量2:
    语句2;
    break;
    … …
    case 常量N:
    语句N;
    break;
    default:
    语句;
    break;
    }
    【说明】
    (1)break可省略;break可以使用在switch-case结构中,表示结束当前switch-case结构的执行
    (2)switch中的表达式不是条件表达式
    (3)根据表达式中的值,依次匹配case中的常量,一旦匹配成功,就进入相应的case中执行语句,执行完此case后,如果有break,就跳出当前的switch-case结构;
    如果没有break,就依次执行下面的case,直到遇到break或程序执行结束才停止
    (4)switch中表达式的类型只能是:byte\short\char\int\枚举对象(jdk5.0)\String(jdk7.0)
    (5)default:类似于if-else中的else结构。default结构也是可选的、位置是灵活的
    (6)如果多个case语句的执行结构相同,则可以考虑合并。
    (7)case结构中可以不使用break
    (8)凡是使用switch-case结构能实现的分支语句都可以转换为if-else。反之不成立
    (9)当满足switch中表达式的数据类型(6种),同时变量的取值也不多时,建议使用switch-case语句,执行效率高
    三、循环结构
  6. 在某些条件满足的情况下,反复执行特定代码
  7. 循环结构必须包含的4个要素
    ① 初始化条件
    ② 循环条件------>boolean类型
    ③ 循环体
    ④ 迭代条件
  8. for循环
    【结构】
    for(①;②;④ ){

    }
    【执行顺序】①—>②—>③ —>④—>②—> ③ —> ④—>…—> ②
    【循环结束的条件】
    循环条件的返回值为false,退出循环
  9. while循环
    【结构】
    ①;
    while(②){
    ③;
    ④ ;
    }
    【执行顺序】① -> ② -> ③ -> ④ -> ② -> ③ -> ④ ->…-> ②
    【总结】
    (1)只要涉及到循环结构,都可以考虑使用for或while来实现
    (2)for循环和while循环可以相互转换
    (3)初始化条件的有效性:for循环,只在作用域内有效;while循环,出了while循环以后仍然有效
  10. do-while循环
    【结构】
    ①;
    do{
    ③;
    ④ ;
    }while(②);
    【执行顺序】① --> ③ --> ④ --> ② --> ③ --> ④ --> … --> ②
    【区别于for循环和while循环】
    do-while循环至少会执行一次循环体!
  11. “无限循环”结构
    【常见结构】
    for(;;)
    while(true)
    【如何结束一个循环?】
    方式一:当循环条件返回值为false,退出循环
    方式二:使用break关键字跳出循环
    实际情况中:
    for(int i = 1;i <= 10;i++){
    if(i % 4 == 0){
    break;
    }
    }

    boolean isFlag = true;
    while(isFlag){
    if(i == 4){
    isFlag = false;
    }
    }

注意:
如果一个循环结构不能跳出循环就是一个死循环,要避免
12. 嵌套循环
(1)如果外层循环执行m次,内层循环n次,则内层循环的循环体循环m*n次
(2)技巧:对于二重嵌套来说,外层控制行数,内层控制列数
【典型练习】
例题1:
******
******
******
******
例题2:
*
**




例题3:九九乘法表
例题4:100以内所有质数的输出

【补充】break和continue
break和continue
【从键盘获取不同类型的变量】
使用Scanner类:
步骤:
1.导包:import java.util.Scanner;
2.Scanner类的实例化(创建对象):Scanner scan = new Scanner(System.in);
3.调用Scanner类提供的相关方法,获取不同类型的变量

说明:
1.scan为变量名,可自定义
2.不能使用Scanner来获取char类型变量,可以获取String型替代
3.如果输入的类型和要求获取的类型不匹配,则报错:InputMisMatchException

//1.导包:
import java.util.Scanner;
class ScannerTest{
	public static void main(String[] args){
		//2.Scanner类的实例化
		Scanner scan = new Scanner(System.in);
		//3.调用Scanner类提供的相关方法,获取不同类型的变量
		System.out.println("请输入年龄:");
		int age = scan.nextInt();
		System.out.println("age = " + age);
		
		System.out.println("请输入你的名字:");
		String name = scan.next();
		System.out.println("name= " + name);
		
		System.out.println("请输入你的体重(公斤):");
		double weight = scan.nextDouble();
		System.out.println("Weight = " + weight);
		
		System.out.println("你是男的吗?(true/false)");
		boolean isYES = scan.nextBoolean();
		System.out.println("isYES = " + isYES);
		
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值