单分支if选择结构代码练习案例
package JavaLearn4;
public class Demo01 {
/*
* 单分支if选择结构:
* 语法结构:
* if(条件){
* //代码块
* }
* 执行规律:
* 判断条件的结果:
* 如果条件为true,执行{}里的代码块,执行完代码块后,继续往下执行if结构后面的代码
* 如果条件为false,则跳过if结构,执行if结构后面的代码
* 注意事项:
* 条件不管写的多么的简单或者多么的复杂,条件的结果只能是布尔值,要么为true,要么为false
*
* */
public static void main(String[] args) {
//张浩Java成绩大于90分,老师奖励他iPhone6s ,该怎么做呢?
//首先,将成绩存储在一个变量中
double javaScore = 3.5;
//判断成绩是否大于90分
if(javaScore>90){
System.out.println("恭喜你,成绩大于90.奖励IPhone6s");
}
System.out.println("继续努力");
}
}
package JavaLearn4;
public class Demo02 {
public static void main(String[] args) {
/*
* 张浩Java成绩大于90分,并且音乐成绩大于80分时,
* 或者Java成绩等于100分,音乐成绩大于70分时,老师奖励他,该怎么做呢?
*
* */
//首先将Java成绩和音乐成绩存储在变量中
double javaScore = 100;
double musicScore = 75;
//判断能不能得到奖励
if((javaScore>90&&musicScore>80)||(javaScore==100&&musicScore>70)){
System.out.println("奖励IPhone6s");
}
System.out.println("继续努力");
}
}
双分支if选择结构代码练习案例
package JavaLearn4;
public class Demo03 {
/*
* 双分支if选择结构(if-else结构)
* 语法结构:
* if(条件){
* //代码块1;
* }else{
* //代码块2
* }
* 执行规律:
* 判断条件的结果:
* 如果条件为true,执行代码块1,执行完代码块1,结束if-else结构,继续往下执行if-else结构后面的代码
* 如果条件为false,执行代码块2,执行完代码块2,结束if-else结构,继续往下执行if-else结构后面的代码
* 注意事项:
* 1)条件不管写的多么简单还是多么复杂,都只能是布尔值,要么为true要么为false
* 2)如果代码块1只有一条语句,{}可以省略不写,建议不要省略
* */
public static void main(String[] args) {
//如果张浩Java考试成绩大于90分,老师就奖励他一个iPhone6s,否则老师就罚他蹲马步
//首先,将成绩存储在变量中
double javaScore = 93.5;
//判断成绩
if(javaScore>90){
System.out.println("奖励IPhone6s");
}else{
System.out.println("蹲马步5分钟");
}
System.out.println("继续努力");
System.out.println("---------------------------");
//使用条件运算符完成上述操作
// String result =javaScore>90?"奖励IPhone6s":"蹲马步5分钟";
// System.out.println(result);
System.out.println(javaScore>90?"奖励IPhone6s":"蹲马步5分钟");
}
}
多分支if选择结构代码练习案例
package JavaLearn4;
public class Demo04 {
/*
* 多分支if选择结构:
* 语法结构:
* if(条件1){
* //代码块1;
* }else if(条件2){
* //代码块2;
* }else if(条件3){
* //代码块3;
* }.....
*
* }else if(条件n){
* //代码块n;
* }else{
* //代码块m;
* }
* 执行规律:
* 判断条件1:
* 如果条件1为true,执行代码块1,执行完代码块1,结束这个if-else-if结构,继续往下执行if-else-if结构后面的代码
* 如果条件1为false,继续判断条件2:
* 如果条件2为true,执行代码块2,执行完代码块2,结束这个if-else-if结构,继续往下执行if-else-if结构后面的代码
* 如果条件2为false,继续判断条件3:
* 如果条件3为true,执行代码块3,执行完代码块3,结束这个if-else-if结构,继续往下执行if-else-if结构后面的代码
* 如果条件3为false,继续判断下面的条件:
* ........
* 如果所有的条件都不成立,就执行else里面的代码m,执行完else里面的代码m后,结束这个if-else-if结构,继续往下执行if-else-if结构后面的代码
* 注意事项:
* 1)按照顺序从上往下判断条件,一旦条件满足,就执行对应{}里的代码,执行完,就结束if-else-if结构,不再往下判断其它条件
* 2)如果所有条件不满足,执行else里面的代码。else可以省略不写,当所有条件都不满足,有没有else的时候,if-else-if结构代码不会执行
* 3)当条件不是完整的两个边界值时,条件是由排列顺序的,严格的条件写在最上面
*
* */
public static void main(String[] args) {
/*
* 根据成绩划分等级
* >=90 优秀 【90,100】
* >=80 良好 【80,90)
* >=60 一般
* <60 差
*
* */
//将成绩存储在变量中
double score = 99;
//对成绩进行判断
if(score>=90){
System.out.println("优秀");
}else if(score>=80){
System.out.println("良好");
}else if(score>=60){
System.out.println("一般");
}else{
System.out.println("差");
}
System.out.println("继续努力");
}
}
equals和==使用区别
package JavaLearn4;
public class Demo05 {
/*
* 比较两个字符串的内容是否相同,使用equals()进行比较
* 使用方式:
* 字符串变量名.equals(字符串变量家或者字符串),比较的结果是一个布尔值,当两个字符串内容相同时返回true,否则返回false
*
* 总结:
* 比较字符串内容实用equals()
* 比较两个字符串的内存地址,使用==
*
* */
public static void main(String[] args) {
String str1 = "大湖名城";
String str2 = "大湖名城";
boolean result1 =str1.equals(str2);
System.out.println("str1和str2变量中存储的内容相同:"+result1);
boolean result2 =str1.equals("创新高地");
System.out.println("str1和指定的字符串内容相同:"+result2);
}
}
嵌套if选择结构代码练习案例
package JavaLearn4;
import java.util.Scanner;
public class Demo06 {
/*
* 嵌套if选择结构:在一个if结构中包含另外一个if结构
* 语法结构:
* if(条件1){
* //代码块1;
* if(条件2){
* //代码块2;
* }else{
* //代码块3;
* }
* }else{
* //代码块4;
* if(条件3){
* //代码块5;
* }else{
* //代码块6;
* }
* }
* 执行规律:
* 判断条件1:
* 如果条件1为true,进入{}中执行代码块1,然后判断条件2:
* 如果条件2为true,执行代码块2,执行完代码块2,结束整个嵌套if结构,继续执行嵌套if结构之后的代码
* 如果条件2为false,执行代码块3,执行完代码块3,结束整个嵌套if结构,继续执行嵌套if结构之后的代码
* 如果条件1为false,进入else{}中执行代码块4,然后判断条件3:
* 如果条件3为true,执行代码块5,执行完代码块5,结束整个嵌套if结构,继续执行嵌套if结构之后的代码
* 如果条件3为false,执行代码块6,执行完代码块6,结束整个嵌套if结构,继续执行嵌套if结构之后的代码
* 注意事项:
* 不管结构嵌套多少层,严格按照if结构的执行规律,一层一层的往里面判断条件,根据条件决定执行哪个代码块
* */
public static void main(String[] args) {
//学校举行运动会,百米赛跑跑入10 秒内的学生有资格进决赛,根据性别分别进入男子组和女子组
//创建Scanner对象用于获取跑步成绩和性别
Scanner scanner = new Scanner(System.in);
//获取跑步成绩
System.out.println("请输入你的百米赛跑成绩:");
double runScore =scanner.nextDouble();
//判断成绩是否能进入决赛
if(runScore<10){
System.out.println("恭喜你,进入决赛");
//进入决赛后,根据性别分组,获取性别
System.out.println("请输入你的性别(男/女):");
String gender =scanner.next();
//判断性别,进行分组
if(gender.equals("男")){
System.out.println("进入男子决赛组");
}else if(gender.equals("女")){
System.out.println("进入女子决赛组");
}else{
System.out.println("性别输入错误");
}
}else{
System.out.println("很遗憾,没能进入决赛,继续努力");
}
System.out.println("运动员加油");
}
}
Math.random(获取随机数)的使用
package JavaLearn4;
public class Demo07 {
public static void main(String[] args) {
//获取随机数使用Math.random()实现
//Math.random():随机返回一个[0.0,1.0)之间的double类型的数据
double num1 =Math.random();//Math这个java文件在java.lang包中,按理来说需要导包,但是在这里不需要导包,因为系统默认会将java.lang包中的类导入java虚拟机中
//System.out.println(num1);
//Math.random()*10:随机返回一个[0.0,10.0)之间的double类型的数据
double num2 =Math.random()*10;
//System.out.println(num2);
//(int)(Math.random()*10):随机返回一个[0,10)之间的int类型的数据
int num3 =(int)(Math.random()*10);
System.out.println(num3);
//随机获取一个[29,42)之间的int类型的数据
int num4 =(int)(Math.random()*(42-29)+29);
System.out.print(num4+" ");
//随机获取一个[num1,num2)(num2大于num1)之间的int类型的数据
//(int)(Math.random()*(num2-num1)+num1);
}
}
package JavaLearn4;
import java.util.Scanner;
public class Demo08 {
public static void main(String[] args) {
//抽奖规则:会员号的百位数字等于产生的随机数字即为幸运会员
//创建Scanner对象用来获取键盘输入的数据:会员卡号
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你的会员卡号:");
int cardNum = scanner.nextInt();
//获取会员卡的百位数字
int baiWei = cardNum/100%10;
//获取随机数
int num = (int)(Math.random()*10);
//判断会员卡的百位数字与随机数是否相同,相同则中奖,否则没有中奖
if(baiWei==num){
System.out.println("恭喜你,中奖了");
}else{
System.out.println("很遗憾,没有中奖,谢谢惠顾");
}
}
}
switch选择结构代码练习案例
package JavaLearn4;
public class Demo09 {
/*
* switch选择结构:
* 语法结构:
* switch(表达式){
* case 值1:
* 代码块1;
* break;
* case 值2:
* 代码块2;
* break;
* .......
* case 值n:
* 代码块n;
* break;
* default:
* 代码块m;
* break;
* }
* 执行规律:
* 首先计算表达式的值,然后拿表达式的值与case后面的值进行匹配,表达式的值与哪个case的值相同,就执行相应的代码块,代码块执行完,执行break,结束整个switch结构,继续往下执行switch结构后面的代码
* 如果表达式的值与所有的case值都不相同,就执行default里面代码块,执行完代码块执行break,结束整个Switch结构,继续往下执行Switch结构后面的代码
* 注意事项:
* 1)表达式值的类型可以是int、short、byte、char、枚举类型、String(JDK1.5版本之后)
* 2)case后面的值不能相同,相同会报错
* 3)每个case里面的break的作用是退出switch结构,可以省略不写,省略不写会造成“case穿透”现象
* 4)default语句是当表达式的值与所有case值不相同时执行的代码,它可以写在任意位置,一般写在末尾。default语句也可以省略不写,省略不写,如果表达式的值与所有case值不相同,那么switch结构就不会执行
*
* */
public static void main(String[] args) {
/*
* 韩嫣参加计算机编程大赛
* 如果第一名,参加麻省理工大学组织的1个月夏令营
* 如果第二名,奖励惠普笔记本电脑一部
* 如果第三名,奖励移动硬盘一个
* 否则,不给任何奖励
* */
int mingCi =1;
if(mingCi==1){
System.out.println("参加麻省理工大学组织的1个月夏令营");
}else if(mingCi==2){
System.out.println("奖励惠普笔记本电脑一部");
}else if(mingCi==3){
System.out.println("奖励移动硬盘一个");
}else{
System.out.println("不给任何奖励");
}
System.out.println("-------------------------");
switch(mingCi){
case 1:
System.out.println("参加麻省理工大学组织的1个月夏令营");
break;
case 2:
System.out.println("奖励惠普笔记本电脑一部");
break;
case 3:
System.out.println("奖励移动硬盘一个");
break;
default:
System.out.println("不给任何奖励");
break;
}
System.out.println("继续努力");
}
}
case穿透现象的使用
package JavaLearn4;
public class Demo10 {
//case穿透现象的使用
public static void main(String[] args) {
//根据月份输出季节 12 1 2 冬季、3 4 5 春季、6 7 8 夏季、9 10 11 秋季
int month = 4;
switch (month){
case 12:
// System.out.println("冬季");
// break;
case 1:
// System.out.println("冬季");
// break;
case 2:
System.out.println("冬季");
break;
case 3:
// System.out.println("春季");
// break;
case 4:
// System.out.println("春季");
// break;
case 5:
System.out.println("春季");
break;
case 6:
// System.out.println("夏季");
// break;
case 7:
// System.out.println("夏季");
// break;
case 8:
System.out.println("夏季");
break;
case 9:
// System.out.println("秋季");
// break;
case 10:
// System.out.println("秋季");
// break;
case 11:
System.out.println("秋季");
break;
}
}
}