2022.8.31 记录学习java的第六天。今天主要认识了java流程控制中的选择结构,学习了字符串内容的比较方法和随机数的获取方法。
1.流程控制
用来控制程序中各个语句的执行顺序。有选择结构、顺序结构、循环结构。
2.if分支结构
2.1 基本的if选择结构(单分支)
语法结构:if(条件){
代码块1;
}
代码块2 ;
执行规律:if中的条件为true,则执行代码块1,执行完后if选择结构结束,继续执行代码块2;
if中的条件为false,则直接结束if选择结构,执行代码块2。
注:条件的结果必须是布尔值,要么为true,要么为false。
案例:张浩的成绩大于90分,老师奖励他iPhone6s。
2.2 条件较为复杂的if选择结构(单分支)
单分支if选择结构中的条件较为复杂时,可以使用逻辑运算符来操作。不论条件多么复杂还是多么简单,条件的结果都是布尔值。
案例:判断一个年份是平年还是闰年。
2.3 双分支if选择结构(if-else结构)
语法结构:if(条件){
代码块1;
}else{
代码块2;
}
代码块3;
执行规律:条件为true时,执行代码块1,执行完,直接结束if-else结构,继续执行代码块3;
条件为false时,执行else{...}中的代码块2,执行完结束if-else结构,继续执行代码块3
案例1:判断一个整数是偶数还是奇数。
案例2:判断一个3位数是不是水仙花数
2.4 多重if选择结构(if-else-if结构)
语法结构:if(条件1){
代码块1;
}else if(条件2){
代码块2;
}else if(条件3){
代码块3;
}.......
}else{
代码块n;
}
执行规律:条件1为true,执行代码块1,执行完结束if-else-if结构;条件1为false,判断条件2,条件2为true,执行代码块2,执行完结束if-else-if结构;条件2为false,判断条件3,条件3为true,执行代码块3,执行完结束if-else-if结构,条件3为false,。。。。。。
注:else{...}可以省略不写,当所有条件为false,直接结束if-else-if结构
if-else-if结构中的条件顺序不可以随便排列,严格的条件写在最前面。
案例:对学员的考试成绩评测,成绩>=80 :良好,成绩>=60 :中等,成绩<60 :差。
3.多重if选择结构的嵌套使用
3.1字符串的内容比较
方法:.equals();
固定写法:字符串1.equals(字符串2);//判断字符串1与字符串2的内容是否相同
String str1 = "hello";
String str2 = "hello";
boolean result = str1.equals(str2);//str1与str2内容比较,然后通过=存储到result中
System.out.println("result");//输出为true
//或者
boolean result2 = str1.equals("你好");
System.out.println(result2);//输出为false
3.1.1案例
3.2 获取随机数
固定写法:Math.random();//随机获取一个[0.0,1.0)的double类型的数据
Math.random()*10;//随机获取一个[0.0,10.0)的double类型的数据
(int)(Math.random()*10);//随机获取一个[0,10)的int类型的数据
(int)(Math.random()*(num2-num1)+num1);//随机获取一个[num1,num2)的int类型的数据,num1<num2
double num1 = Math.random();//随机获取的一个[0.0,1.0)的double类型数据存储到num1中
System.out.println(num2);//输出获取的随机数
int num2 = (int)(Math.random*10);//随机获取的一个[0,10)的int类型数据存储到num2中
System.out.println(num2);//输出获取的随机数