控制语句:把语句组合成能完成一定功能的小逻辑模块。分为 1.顺序语句 2.选择语句 3.循环语句。实际上,任何软件和程序,小到一个练习,大到一个操作系统,本质上都是由“选择语句、循环语句”组成。在cpp中我们学习的顺序结构、选择结构、循环结构都与Java不能说如出一辙,只能说是一毛一样。
条件语句
条件判断结构有:if 结构和 switch 结构。而 if 结构又可以分为 if 单分支结构、if-else 双分 支结构、if-else if-else 多分支结构。
if结构
if结构虽然能分为 if 单分支结构、if-else 双分 支结构、if-else if-else 多分支结构,但是判断的本质都是一样的,都是通过if后面括号内的布尔表达式去进行判断是否执行。
下面用一个随机函数Math.random()来简单的实际应用一下if结构:
package com.CWJH;
public class textif11 {
public static void main(String[] args){
int age=(int)(100*Math.random() );
System.out.print("年龄是" + age + ", 属于");
if (age < 15) { System.out.println("儿童, 喜欢玩!"); }
else if (age < 25) { System.out.println("青年, 要学习!"); }
else if (age < 45) { System.out.println("中年, 要工作!"); }
else if (age < 65) { System.out.println("中老年, 要补钙!"); }
else if (age < 85) { System.out.println("老年, 多运动!"); }
else { System.out.println("老寿星, 古来稀!"); }
}
}
运行结果:
switch多分支结构
switch多分支结构相比if结构区别还是有很多不同点;
switch 会根据表达式的值从相匹配的 case 标签处开始执行,一直执行到 break 处或者是 switch 的末尾。如果表达式的值与任一 case 值不匹配,则进入 default 语句。小注意:若
在default之前没遇到break,default语句的内容还是会执行(来自cpp的坑题);
switch 中表达式的值,是 int(byte、short、char 也可,long 不行)、枚举,字符串。
package com.CWJH;
public class textswitch {
public static void main(String[] args) {
int month = (int)(Math.random()*12)+1;
if(month==1||month==2||month==3||month==4
||month==5||month==6){
System.out.println(month+"月,属于上半年");
}else{
System.out.println(month+"月,下半年");
}
switch (month){
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
System.out.println(month+"月,属于上半年");
break;
default:
System.out.println(month+"月,下半年");
break;
}
}
}
运行结果:
循环语句
Java循环语句与cpp中的循环语句相同都为while、do--while、for循环。但课中的描述与cppc中又有些不同。Java:循环结构分两大类,一类是当型,一类是直到型。
- 当型:当布尔表达式条件为 true 时,反复执行某语句,当布尔表达式的值为 false 时才停止 循环,比如:while 与 for 循环。
- 直到型:先执行某语句, 再判断布尔表达式,如果为 true,再执行某语句,如此反复,直到布 尔表达式条件为 false 时才停止循环,比如 do-while 循环。
(cpp中对于循环结构进行了很多练习,在此不进行实演)
break语句和continue语句
1.break用于强制退出整个循环 2.continue用于结束本次循环,可继续下次循环
最后是看视频过程中收集的一点点小知识
- println实现换行 print 不换行
- Math.round 四舍五入(参数的相邻整数区间向最接近的那个整数进行舍取,若位于正中间则向正无穷方向取整,与cpp中round()函数一致)