欢迎来到@一夜看尽长安花 博客,您的点赞和收藏是我持续发文的动力
对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何想要讨论的问题可联系我:3329759426@qq.com 。发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。
专栏:
文章概述:对控制语句的介绍
关键词:控制语句
本文目录:
控制语句
控制语句:把语句组合成能完成一定功能的小逻辑模块。它分为三类:顺序、选择和循环。
学会控制语句,是真正跨入编程界的“门槛”,是成为“程序猿”的“门票”。
- “顺序结构”代表“先执行a,再执行b”的逻辑。比如,先找个女朋友,再给女朋友打电话;先订婚,再结婚;
- “条件判断结构”代表“如果…,则…”的逻辑。比如,如果女朋友来电,则迅速接电话;如果看到红灯,则停车;
- “循环结构”代表“如果…,则重复执行…”的逻辑。比如,如果没打通女朋友电话,则再继续打一次; 如果没找到喜欢的人,则再继续找。
很神奇的是,三种流程控制语句就能表示所有的事情!不信,你可以试试拆分你遇到的各种事情。实际上,任何软件和程序,小到一个练习,大到一个操作系统,本质上都是由“变量、选择语句、循环语句”组成。
条件判断结构(选择结构)
条件判断结构有:if
结构和switch
结构。而if结构又可以分为if单分支结构、if-else
双分支结构、if-else if-else
多分支结构。
if单分支结构
语法结构:
if(布尔表达式){
语句块
}
新手雷区
- 如果if语句不写{},则只能作用于后面的第一条语句。
- 强烈建议,任何时候都写上{},即使里面只有一句话!
【示例】if单分支结构(掷骰子游戏)
Math类的使用
Math.random()
该方法用于产生0到1区间的double类型的随机数,但是不包括1。
int i = (int) (6 * Math.**random**()); //
产生:[0,5]
之间的随机整数
public class Test1 {
public static void main(String[ ] args) {
//通过掷三个骰子看看今天的手气如何?
//(int)(6 * Math.random()) + 1: 加 1,使结果范围在 1 到 6 之间。
int i = (int)(6 * Math.random()) + 1;//通过Math.random()产生随机数
int j = (int)(6 * Math.random()) + 1;
int k = (int)(6 * Math.random()) + 1;
int count = i + j + k;
//如果三个骰子之和大于15,则手气不错
if(count > 15) {
System.out.println("今天手气不错");
}
//如果三个骰子之和在10到15之间,则手气一般
if(count >= 10 && count <= 15) { //错误写法:10<=count<=15
System.out.println("今天手气很一般");
}
//如果三个骰子之和小于10,则手气不怎么样
if(count < 10) {
System.out.println("今天手气不怎么样");
}
System.out.println("得了" + count + "分");
}
}
执行结果如图所示:
if-else双分支结构
语法结构:
if(布尔表达式){
语句块1
}else{
语句块2
}
当布尔表达式为真时,执行语句块1,否则,执行语句块2。也就是else部分。
【示例】if-else双分支结构
public class Test2 {
public static void main(String[ ] args) {
//随机产生一个[0.0, 4.0)区间的半径,并根据半径求圆的面积和周长
double r = 4 * Math.random();
//Math.pow(r, 2)求半径r的平方
double area = 3.14* r*r;
double circle = 2 * Math.PI * r;
System.out.println("半径为: " + r);
System.out.println("面积为: " + area);
System.out.println("周长为: " + circle);
//若面积>=周长,输出"面积大于等于周长",否则,输出周长大于面积
if(area >= circle) {
System.out.println("面积大于等于周长");
} else {
System.out.println("周长大于面积");
}
}
}
执行结果如图所示:
条件运算符有时候可用于代替if-else。
【示例】if-else
与条件运算符的比较:使用if-else
int a = 3;
int b = 4;
int c2 = 0;
if(a<b){
c2 = b;
}else{
c2 = a;
}
System.out.println(c2);
【示例】if-else与条件运算符的比较:使用条件运算符
int a = 3;
int b = 4;
int c = a<b?b:a; //返回a和b的最大值
System.out.println(c);