java朗控点异常_Java语言基础(day_04)

选择结构(switch语句)(掌握)

1)格式:switch(表达式){    case 值1:语句体1;  break;    case 值2:语句体2;  break;    ...    default:语句体n+1;  break;  }

2)格式解释

switch表示这是switch语句

· 表达式的取值: byte、short、int、char

·JDK5以后可以是枚举

·JDK7以后可以是string

case后面跟的是要和表达式进行比较的值

语句体部分可以是一条或多条语句。

break表示中断,结束的意思,可以结束switch语句。

default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

3)执行流程

首先计算出表达式的值。其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束。

4)流程图

a26ecf044f2e

switch的流程图

5)案例

键盘录入一个数据,根据这个数据,输出对应的星期?例如:键盘录入1,对应输出星期一;键盘录入2,对应输出星期二......

a26ecf044f2e

switch语句体代码

6)注意事项

I. case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的。

II. default可以省略,一般不建议。除非判断的值是固定的。

III. break可以省略,但不建议。否则结果可能不是你想要的。会出现一个现象(case穿透)。

IV. default的位置可以出现在任意地方。

V. switch语句的结束条件,遇到break或者执行到程序末尾。

7)看程序写结果

a26ecf044f2e

结果为:y=4

a26ecf044f2e

结果为:b=6

8)switch语句练习

I. 模拟做单项选择题,根据你的选择,给出对应的答案。(表达式是字符的情况)

a26ecf044f2e

II. 键盘录入字符串,根据给定的字符串,来输出你选择的字符串是什么?(表达式是字符串的情况)

a26ecf044f2e

III. 用switch语句实现键盘录入月份,输出对应的季节

a26ecf044f2e

9)在做判断的时候,我们有两种选择,if语句和switch语句,那么,我们到底该如何选择使用哪种语句呢?

if语句使用场景:I.针对结果是boolean类型的判断    II.针对一个范围的判断    III.针对几个常量值的判断

switch语句使用场景:I.针对几个常量值的判断

循环结构(掌握)

1)概述

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

2)循环语句的组成

I. 初始化语句:一条或者多条语句,这些语句完成一些初始化操作。

II. 判断条件语句:这是一个boolean表达式,这个表达式能决定是否执行循环体。

III. 循环体语句:这个部分是循环体语句,也就是我们要多次做的事情。

IV. 控制条件语句:这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变量,使得循环在合适的时候结束。

> for循环语句

1)for循环语句格式:for(初始化语句;  判断条件语句;  控制条件语句) {  循环体语句;  }

2)执行流程

A:执行初始化语句 —— B:再执行判断条件语句,看其结果是true还是false,(如果是false,循环结束)如果是true,继续执行; —— C:执行循环体语句 —— D:执行控制条件语句 —— E:回到B继续

3)流程图

a26ecf044f2e

for循环语句的流程图

4)示例:输出十遍"HelloWorld"

a26ecf044f2e

5)注意事项

I. 判断条件语句的结果是一个boolean类型

II. 循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。(建议永远不要省略。)

III. 一般来说:有左大括号就没有分号,有分号就没有左大括号。

6)for循环的练习题

(1)请在控制台输出数据1~10

a26ecf044f2e

(2)请在控制台输出数据10~1

a26ecf044f2e

(3)求出1~10之间的数据之和

a26ecf044f2e

结果为:sum = 55

(4)求出1~100之间偶数的和

a26ecf044f2e

结果为:1~100之间的偶数和为2550

(5)求出1~100之间奇数的和

a26ecf044f2e

结果为:1~100之间的奇数和为2500

(6)求5的阶乘

a26ecf044f2e

结果为;5的阶乘为:120

(7)在控制台输出所有的“水仙花数”

所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。举例:153就是一个水仙花数。153 =1*1*1 + 5*5*5 +3*3*3

a26ecf044f2e

控制台结果:153 370 371 407

(8)统计“水仙花数”共有多少个

a26ecf044f2e

控制台:4

(9)请在控制台输出满足如下条件的五位数

个位等于万位,十位等于千位,个位+十位+千位+万位=百位

a26ecf044f2e

控制台结果:10201,11411,12621,13831,20402,21612,22822,30603,31813,40804

(10)请统计1~1000之间同时满足如下条件的数据有多少个?    对3整除余2,对5整除余3,对7整除余2

a26ecf044f2e

控制台的结果:10

> while循环语句

1)基本格式:while(判断条件语句) {  循环体语句;  }

2)扩展格式:初始化语句;  while(判断条件语句){  循环体语句;  控制条件语句;  }

3)流程图

a26ecf044f2e

while循环语句的流程图

4)示例:输出10次"HelloWorld"

a26ecf044f2e

5)while循环语句的练习题

(1)求出1~100之和

a26ecf044f2e

控制台输出:1~100的和为5050

(2)统计水仙花数有多少个

a26ecf044f2e

控制台输出:水仙花数的个数为4

(3)我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够大的纸张,厚度为:0.01m。请问,我折叠多少次,就可以保证厚度不低于珠穆朗马峰的高度?

a26ecf044f2e

控制台输出:需要折20次

6)for循环和while循环的区别

for循环语句和while循环语句可以等价转换,但还是有些小区别的。

I. 使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

II. 场景区别:for循环适合针对一个范围判断进行操作;while循环适合判断次数不明确操作。

> do...while循环语句

1)基本格式:do{  循环体语句;  }while(判断条件语句);

2)扩展格式:初始化语句;  do{  循环体语句;  控制条件语句;  }while(判断条件语句);

3)流程图

a26ecf044f2e

do...while的流程图

4)示例:输出十次"HelloWorld"

a26ecf044f2e

5)循环语句的区别

do...while循环至少执行一次循环体。而for,while循环必须先判断条件是否成立,然后决定是否执行循环语句。

那么,我们一般使用哪种循环呢?    优先考虑for,其次考虑while,最后考虑do...while

6)注意死循环

A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。

B:两种最简单的死循环格式        while(true) {...}    for(;;) {...}

7)练习题

(1)请输出一个4行5列的星星(*)图案,如下

a26ecf044f2e

效果图

a26ecf044f2e

(2)请输出如下图形

a26ecf044f2e

效果图

a26ecf044f2e

(3)需求:在控制台输出九九乘法表

a26ecf044f2e

效果图

a26ecf044f2e

跳转控制语句(掌握)

1)概述

前面我们已经说过了,Java中的goto是保留字目前不能使用。虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情。为了弥补这个缺陷,Java就提供了break,continue和return来实现控制语句的跳转和中断。

2)分类:break中断    continue继续    return返回

> break

1)使用场景:I. 在选择结构switch语句中    II. 在循环语句中    (离开使用场景的存在是没有意义的)

2)作用:I. 跳出单层循环    II. 跳出多层循环(带标签的跳出    格式:标签名:循环语句)【标签名要符合java的命名规则】

3)示例

a26ecf044f2e

4)练习题

小芳的妈妈每天给她2.5元钱,她都会存起来,但是,每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱。

a26ecf044f2e

控制台输出:经过74天,小芳才可以存到100元钱

> continue

1)使用场景:在循环语句中 (离开使用场景的存在是没有意义的)

2)作用:单层循环表示退出本次循环,也可以带标签使用

3)练习题

a26ecf044f2e

I. 在控制台输出2次:"Java基础班"        ——>  break

II. 在控制台输出7次:"Java基础班"        ——>  continue

III. 在控制台输出13次:"Java基础班"          ——> System.out.println("Java基础班")

> return

1)概述

return关键字不是为了跳转出循环体,更常用的功能是结束一个方法,也就是退出一个方法。跳转到上层调用的方法。这个在方法的使用那里会在详细的讲解。

2)特点:一旦遇到return,程序就不会在继续往后执行

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值