javase学习——流程控制结构

1. 表达式和语句

1.1 表达式

表达式一共分为三种:

(1)变量或常量 + 运算符构成的计算表达式

(2)new 表达式,结果是一个数组或类的对象。(后面讲)

(3)方法调用表达式,结果是方法返回值或void(无返回值)。(后面讲)

1.2 语句

程序的功能是由语句来完成的,语句分为单语句和复合语句

1.2.1 单语句:

(1)空语句,什么功能都没有。它就是单独的一个分号;(==需要避免==)

(2)表达式语句,就是表达式后面加分号;

1.2.2 复合语句

(1)分支语句:if...else,switch...case

(2)循环语句:for,while,do...while

(3)跳转语句:break,continue,return,throw

(4)try语句:try...catch...finally(后面学习)

(5)同步语句:synchronized(后面学习)

流程控制的三大结构:顺序、分支、循环

2. 顺序结构

顺序结构就是程序从上到下逐行地执行。表达式语句都是顺序执行的。并且上一行对某个变量的修改对下一行会产生影响。

2.1 输出语句

System.out.println() //换行
System.out.print() //不换行

2.2 输入语句

键盘输入代码的四个步骤:

1、申请资源,创建Scanner类型的对象

2、提示输入xx

3、接收输入内容

4、全部输入完成之后,释放资源,归还资源

2.3 next与nextline的区别

next()与nextLine()的区别?

    next(),读取输入的数据时,遇到空格等空白字符,就认为本次数据输入结束
    nextLine(),读取输入的数据时,遇到回车换行才认为结束

    上一个接收输入的语句是nextInt(),next(),nextDouble()....
    下一个紧接着的接收输入的语句是nextLine()
    这个时间发现第二个输入语句,还没有输入呢,就结束了。

    因为:nextInt(),next(),nextDouble()....它没有读取 回车换行符,数据通道(IO流)中还有回车换行符,
    那么下一个nextLine(),一看通道中有 回车换行符,就以为输入结束了。

结论:
    如果字符串中不会包含空格,那么建议大家使用next()更好。
    如果字符串中想要包含空格,那么nextLine()的前面还有其他输入的话,加一句input.nextLine()把前面的回车换行读取掉。

3. 分支结构

3.1 if

1. 单分支条件判断
	if()
2. 双分支条件判断
	if(){
	}else{
	}
3. 多分支条件判断
	if(){
	}else if(){
	}else{
	}

3.2 switch-case

	switch(表达式){
    case 常量值1:
        语句块1;break;case 常量值2:
        语句块2;break;】   
    。。。
   【default:
        语句块n+1;break;】
     】
}

4. 循环结构

4.1 for循环

for(初始化语句①; 循环条件语句②; 迭代语句④){
	循环体语句③
}
执行流程:
- 第一步:执行初始化语句①,完成循环变量的初始化;
- 第二步:执行循环条件语句②,看循环条件语句的值是true,还是false;
  - 如果是true,执行第三步;
  - 如果是false,循环语句中止,循环不再执行。
- 第三步:执行循环体语句③
- 第四步:执行迭代语句④,针对循环变量重新赋值
- 第五步:根据循环变量的新值,重新从第二步开始再执行一遍

4.2 while循环

while (循环条件语句①) {
    循环体语句②;
}
执行流程:

* 第一步:执行循环条件语句①,看循环条件语句的值是true,还是false;
  * 如果是true,执行第二步;
  * 如果是false,循环语句中止,循环不再执行。
* 第二步:执行循环体语句②;
* 第三步:循环体语句执行完后,重新从第一步开始再执行一遍

4.3 do…while循环

do {
    循环体语句①;
} while (循环条件语句②)
执行流程:

* 第一步:执行循环体语句①;
* 第二步:执行循环条件语句②,看循环条件语句的值是true,还是false;
  * 如果是true,执行第三步;
  * 如果是false,循环语句终止,循环不再执行。
* 第三步:循环条件语句执行完后,重新从第一步开始再执行一遍

4.4 break 与 continue

break:终止switch或者当前循环
- 在选择结构switch语句中
- 在循环语句中
- 离开使用场景的存在是没有意义的

continue:提前结束本次循环,继续下一次的循环
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值