文章目录

  • 流程控制语句结构:
    • 1. 顺序结构
    • 2. 分支结构
    • 3. 循环结构
    • 分支结构语法:
      • 1. 单分支结构;
      • 2. 双分支结构
      • 3. 多分支条件语句:
    • 选择结构
      • 语法:
        • 注意:
    • 输入输出案例
    • 练习题

本节课我们学习java基础部分的流程控制语句,流程控制语句方为三种结构: 顺序结构,任何程序的执行都是自上而下,从左到右的执行。
本节课的重点是分支结构,if语句的使用

循环语句我们下一节课在学习,但循环结构作为流程控制语句的一种,把他列在了这里。

首先我们来看流程控制语句的三种表现形式:

流程控制语句结构:

1. 顺序结构

,自左向右,从上到下,顺序执行,这是任何语言执行的特性

2. 分支结构

根据选择不同,执行不同的代码。if…else和switch…case (这是本节课的重点,需要主要的是,所有能用switch …case的地方一定能够使用if … else. 反之不一定成立。)

3. 循环结构

根据条件循环重复执行某段代码。for(普通for和增强for)、while和do…while三种

本节将用到 核心库中的类: String,System,Math,Scanner等
注:
如果这个类型定义在java.lang包下,那么直接使用,无需导包,直接使用简名称
但是如果这个类型定义在其他包下,那么需要写全名称或导包
全名称:java.util.Scanner

分支结构语法:

1. 单分支结构;

if(条件表达式){
//当条件表达式结果为true时,需要执行的语句块
}

2. 双分支结构

if(条件表达式){
//当条件表达式结果为true时,需要执行的语句块1
}else{
//当条件表达式结果为false时,需要执行的语句块2
}

3. 多分支条件语句:

if(条件表达式1){
//当条件表达式1结果为true时,需要执行的复合语句1
}else if(条件表达式2){
//当条件表达式2结果为true时,需要执行的复合语句2
}

else{
//当上述条件表达式结果都为false时,需要执行的语句
}
注: 最后的else不是必须的,可以缺省

选择结构

语法:

switch(表达式){case 常量值1:
//执行语句块1
[break;]
case 常量值2:
//执行语句块2
[break;]......
case 常量值n:
//执行语句块n
[break;]
default:
//执行缺省语句
[break;]}
注意:

(1)表达式返回的结果类型只能是byte,short,char,int,枚举(JDK1.5之后),String(JDK1.7之后)
(2)表达式返回的结果的类型需要与case后的值的类型保持一致
(3)case后面只能跟常量值,不能是变量值或不确定的表达式值
(4)同一个switch语句,case的常量值必须互不相同
(5)break是可选的,当表达式返回结果与某个case后的值进行匹配成功后,执行相应分支的语句,一旦进入某个分支后,只有直到遇到break才会退出switch,否则将会继续执行下一个case的语句。
(6)default是可选的。位置也不一定是最后,也可以在任意case的位置。但是不管再哪里,都是要所有case的常量值不匹配后才会进入default分支,一旦进入

输入输出案例

class Order{public static void main(String[] args){//java.util.Scanner是一个扫描仪类型,是引用数据类型,首字母大写//System.in指定了数据的来源是表示的输入设备,默认代表键盘输入// input是一个变量java.util.Scanner input = new java.util.Scanner(System.in);System.out.println("请输入你的年龄: ");int age = input.nextInt();  //从扫描仪中获取一个int的值,赋值给age这个变量System.out.println("请输入你的姓名: ");String name  = input.next();System.out.println("请输入你的体重: ");double weight = input.nextDouble();System.out.println("请输入你的性别");//因为单个char用的太少,Scanner中没有提供char的方法,所以//我们先按字符串接收,在截取第一个字符char gender = input.next().charAt(0);System.out.println("我的姓名是"+name+",我的年龄是"+age+",我的性别是"+gender+",我的体重是"+weight);}}

练习题

  1. 判断年份是否为闰年(单分支语句)
// 判断年年份是否为闰年
//闰年的条件 1) 被4整除不能被100整除或被400整除class Test03_If{public static void main(String[] args){java.util.Scanner input = new java.util.Scanner(System.in);System.out.println("请输入年份:" );int year = input.nextInt();int days = 28;//平年//如果是闰年if(year % 4 == 0 && year%100 != 0 || year % 400 ==0){days = 29;}System.out.println(year + "的2月份总天数有: "+days );}
}
  1. 判断一个数字是奇数还是偶数(双分支语句)
class Odd_Even_number{public static void main(String[] args){//从键盘输入一个整数,判断是偶数还是奇数java.util.Scanner input = new java.util.Scanner(System.in);System.out.println("请输入一个整数:" );int num = input.nextInt();//判断 双分支条件语句if(num%2 == 0){System.out.println(num +"是个偶数");}else{System.out.println(num + "是个奇数");      }   }
}
  1. 多条件语句
    岳云鹏参加Java考试,他和父亲岳不群达成承诺:如果:
    成绩为100分时,奖励一辆BMW;
    成绩为(80,99]时,奖励一台iphone7plus;
    当成绩为[60,80]时,奖励一个 iPad;
    其它时,什么奖励也没有。
    请从键盘输入岳小鹏的期末成绩,并加以判断

部分学员的方案:

public class Prizes{public static void main(String[] args){java.util.Scanner input = new java.util.Scanner(System.in);System.out.println("请输入你这次的考试成绩: ");int score = input.nextInt();if(score == 100){System.out.println("奖励一辆BMW");}else if(score>80 && score <= 99){System.out.println("奖励一个iphone 7plus");}else if(score>=60 && score<=80){System.out.println("奖励一个iPad");}else{System.out.println("考成这样还想要奖品");}}}

其他学员的方案:

public class Prizes{public static void main(String[] args){java.util.Scanner input = new java.util.Scanner(System.in);System.out.println("请输入你这次的考试成绩: ");int score = input.nextInt();if(score == 100){System.out.println("奖励一辆BMW");}else if(score>80 ){System.out.println("奖励一个iphone 7plus");}else if(score>=60 ){System.out.println("奖励一个iPad");}else{System.out.println("考成这样还想要奖品");}}}

注: 如果只为了完成题目且成绩必须是【0-100】,两个方案都可以,如果成绩大于100,会方案一会汇入到score<60分的分支中去, 方案二会汇入sorce>80的分支中

java基础起步三-流程控制语句中的条件语句相关推荐

  1. python控制语句中的条件语句_『Python』条件控制语句

    Loading... ## 1. 条件语句 ``` Python条件语句是通过一条或者多条语句的执行结果(True或False)来决定执行的代码块. ``` ``` 在Python中, 指定任何非0和 ...

  2. switch中case后可以是表达式吗_自学C++基础教程【流程控制语句】(switch语句 )...

    switch语句:又被称之为 分支选择语句,它提供了一种更方便的方法来实现深层嵌套的if.else逻辑: switch语句先计算表达式的值,并逐个与其后的常量表达式的值相比较,当表达式的值与某个常量表 ...

  3. java循环控制语句,简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别。...

    简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别. 答:for语句,构建确定循环次数的循环结构 while语句,通常构建不确定循环次数的循环结构 do-while语句,通常构建不确定循 ...

  4. java跳转控制语句有哪些_Java语言基础学习之流程控制语句和跳转控制语句实例分析...

    本文主要向大家介绍了Java语言基础学习之流程控制语句和跳转控制语句实例分析,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一.流程控制语句 在一个程序执行的过程中,各条语句的执行顺 ...

  5. 9个问题,带你掌握流程控制语句中的java原理

    摘要:利用9个问题帮助记忆流程控制语句中的Java原理知识. 本文分享自华为云社区<流程控制语句知识点里的java原理>,作者:breakDraw . 相信大家经常会遇到这种问题 可是这个 ...

  6. JAVA基础(三)-面试篇

    系列文章目录 JAVA基础系列只是列出博主在刷牛客JAVA转项练习的总结 JAVA基础篇一:继承.多态.导包问题 .排序.变量初始值等 JAVA基础篇二:父子类问题.Map空值问题.异常.真假问题等 ...

  7. Java基础篇3——流程控制

    Java基础篇3--流程控制 1.顺序结构 正常代码的流程即是顺序流程 2.分支结构 2.1.if-else分支 if(条件表达式) {语句块1; } if(条件表达式) {语句块1; } else ...

  8. Java校招笔试题-Java基础部分(三)

    导语   Java 面试题集2021版 Java基础部分三 26.说说has a 与is a的区别 27.一个房间里有一把椅子,椅子有四条腿,房子和椅子是什么关系,椅子和椅子腿是什么关系? 28.什么 ...

  9. Java实习生常规技术面试题每日十题Java基础(三)

    目录 1.是否可以从一个static方法内部发出对非static方法的调用? 2.Integer与int的区别? 3.Overload和Override的区别.参数列表相同,返回值不同的方法,是否是重 ...

最新文章

  1. Linux软件的安装,更新与卸载
  2. 【 FPGA 】FIR 滤波器之半带抽取器(Half-band Decimator)
  3. 基本数据类型和字符串类型的转换
  4. 将特定像素点在图像上连接起来_图像分割【论文解读】快速图像分割的SuperBPD方法 CVPR-2020...
  5. redis代码 发布订阅
  6. (11)调用门提权(有参)
  7. 【CSS 伪类】顺序
  8. HTTP_请求消息_请求行
  9. SAP Spartacus component-wrapper自定义指令的实现
  10. rocketmq学习杂记
  11. JavaScript学习(六十四)—关于JS的浮点数计算精度问题解决方案
  12. python实现面部特效_Python实现在线批量美颜功能过程解析
  13. 阿里无人车,正在高速过弯
  14. 书籍推荐:《Java数据结构与算法》
  15. 力扣-103. 二叉树的锯齿形层序遍历
  16. 为程序使用内存缓存(MemoryCache)
  17. 前端安全之常见漏洞及防御
  18. 【数模】使用SPSS进行聚类分析
  19. 继电反馈法自整定_PID控制及整定算法
  20. webApp 之 常见问题

热门文章

  1. Linux网络编程——原始套接字能干什么?
  2. redis 平滑重启
  3. 关于双十一购物节相关的调查报告
  4. java技术大牛修炼记5-一名中级程序员的自述
  5. 关联表的更新与插入——mysql刷数技巧
  6. 仿京东APP分类页面(mvp模式+OkHttp封装工具类+拦截器+弱引用回收)
  7. Mysql排序与分类汇总实践
  8. Java中线程的状态
  9. 写一个cmd命令启动微信QQ
  10. python假设有一段英文、其中有单独的字母_假设有一段英文,其中有单独的字母“I”误写为“i”,请编写程...