1.第三章 选择结构(一)

这篇博客详细介绍了Java编程中的选择结构,包括if、if-else、多重if、嵌套if和switch的选择结构,以及它们在不同场景下的应用和优缺点。此外,还探讨了循环结构,如while、do-while和for循环,以及break和continue语句的使用。博客还涵盖了数组的定义、使用和常见错误,以及二重循环和冒泡排序的概念。
摘要由CSDN通过智能技术生成

1.第三章 选择结构(一)

1.概念

A:嗨,我们晚上去吃个排骨汤吧
B:我现在牙还在疼,如果到晚上的时候不疼了我们就一起去

2. 什么是if选择结构

1.语法:

if () { // 括号里必须是布尔条件表达式
//代码块,只有一条语句的时候大括号可以省略,但是不建议那么做
}

如:之前的问题我们可以套用语法

if(张浩的java成绩>90分){
获得MP4作为奖励
}

流程图:

image-20200612115100329

针对之前的问题,有两种实现方式,一是使用Scanner方式实现,二是声明变量
这里给出声明变量的方式,另一种实现方式自己实现

 double score=90.0;
   if(score>90){
      //判断是否大于90分
  System.out.println("老师说不错,奖励一个MP4");
 }
 System.out.println("程序结束");

2.复杂条件下的if选择结构

运算符 表达式 说 明
&& 条件****1 && 条件****2 仅仅两个条件同时为真,结果为真
|| 条件****1 || 条件****2 只要两个条件有一个为真,结果为真
! ! 条件 条件为真时,结果为假****条件为假时,结果为真

运算符优先级顺序:
!>算术运算符>比较运算符>&&>||

张浩的Java成绩大于98分,而且音乐成绩大于80分,老师会奖励他;或者Java成绩等于100分,音乐成绩大于70分,老师也会奖励他

我们可以用( score1 >98 && score2 > 80 ) || ( score1 == 100 && score2 > 70 )就相当于下面这串代码:

  int score1 = 100; // 张浩的Java成绩
   int score2 = 72; // 张浩的音乐成绩
   if ( ( score1 >98&& score2 > 80 )
  || ( score1 == 100 && score2 > 70 ) ){
   
  System.out.println("老师说:不错,奖励一个MP4!");
 }
 System.out.println("程序结束");



## 3.

使用if-else选择结构

原本使用两个基本if选择结构

现在可以使用if-else选择结构实现比上面好用多了
i f ( 条 件 ) / / 代 码 块 1 e l s e / / 代 码 块 2 if ( 条件 ) { //代码块1 }else { //代码块2 } if()//1else//2

i f ( 张 浩 J a v a 成 绩 > 98 ) 奖 励 一 个 M P 4 ; e l s e 惩 罚 进 行 编 码 ; if (张浩Java成绩> 98 ) { 奖励一个MP4;}else { 惩罚进行编码;} if(Java>98)MP4else

流程图:

image-20200612121028913

double score=91;
   if(score>98){
   
    System.out.println("奖励一个MP4");
   }else{
   
    System.out.println("考的有点不好,惩罚");
   }

4.使用多重if选择结构

在我们的之前学习过程中,都是判断两种情况,不是怎么样就是怎么样
在实际生活中是可能出现区间选择的,如:分数的评级
成绩>=80 :良好 成绩>=60 :中等成绩<60 :差
类似这样,单个的if无法完成,多个if又比较麻烦,那就可以使用我们即将学习的多重if
i f ( 成 绩 > = 80 ) / / 代 码 块 1 e l s e i f ( 成 绩 > = 60 ) / / 代 码 块 2 e l s e / / 代 码 块 3 if ( 成绩>=80) { //代码块1 } else if (成绩>=60) { //代码块2 } else { //代码块3 } if(>=80)//1elseif(>=60)//2else//3
流程图:

image-20200612125353816

代码:

问题:成绩>=80 :良好 成绩>=60 :中等成绩<60 :差

思考:if里面的条件顺序是否可以随意更换

int score=77;
   if(score>=80){
   
  System.out.println("良好");
 }else if(score>=60){
   
  System.out.println("中等");
 }else{
   
  System.out.println("差");
 }
 System.out.println("程序结束");

5.为什么使用嵌套if选择结构

宝宝:今晚我们去看电影吧?
小饼干:好啊,不过晚于6点还有其他事就不去了

分析:女是答应去的,但是有前提条件就是不能迟于6点钟
这里就相当于有两个if条件,第一个条件满足才会执行后面的内容

问题:学校举行运动会,百米赛跑跑入10秒内的学生有资格进决赛,根据性别分别进入男子组和女子组
分析:
如果进入决赛 再看是男还是女,如果是男进入男子组女就进入女子组。这就使用到了嵌套if选择结构

if(条件1) { //外面的条件判断
   if(条件2) { //里面的条件判断
         //代码块1
   } else {
         //代码块2    
 }
} else {
  //代码块3

}

流程图:

image-20200612125919174

代码:

int m=8;
 String sex="女";
   if(m<10){    //外层判断
       if(sex.equals("男")){   //内层判断
         System.out.println("宝宝");
     }else if(sex.equals("女")){
         System.out.println("饼干");
      }
 }else{
     System.out.println("淘汰了回家去吧朋友");
 }
    System.out.println("程序结束");

第四章 选择结构(二)

6. 为什么使用switch选择结构

韩嫣参加计算机编程大赛
如果获得第一名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,将奖励惠普笔记本电脑一部
如果获得第三名,将奖励移动硬盘一个
否则,不给任何奖励

int mingCi=2;
   if(mingCi==1){
   System.out.println("参加夏令营活动");
  }else if(mingCi==2){
   System.out.println("奖励笔记本一部");
  }else if(mingCi==3){
   System.out.println("奖励移动硬盘一个");
  }else{
   System.out.println("没有奖励");
  }

用之前学习的方法亦可以解决问题,但是使用以上的多重if选择结构比较复杂和啰嗦,
现在可以使用switch结构来解决这样的问题,switch解决的是等值判断
语 法 : s w i t c h ( 表 达 式 ) / / b y t e s h o t i n t c h a r 枚 举 j d k 1.7 之 后 有 S t r i n g 类 型 c a s e 常 量 1 : b r e a k ; c a s e 常 量 2 : b r e a k ; c a s e 常 量 3 : b r e a k ; . . . d e f a u l t : b r e a k ; 语法:switch(表达式){ //byte shot int char 枚举 jdk1.7之后有String类型case 常量1: break;case 常量2: break;case 常量3: break;...default:break;} :

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值