免费学习推荐:java基础教程

  • 1.用户交互Scanner
  • 2.顺序结构
  • 3.选择结构
      • if单选结构
      • if双选择结构
      • if多选择结构
      • 嵌套的if结构
      • switch多选择结构

1.用户交互Scanner

  • 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特性,我们可以通过Scanner类来获取用户的输入
  • 基本语法
Scanner s = new Scanner(System.in);
  • 通过Scanner类的next( )与nextLine( )方法获取输入的字符串,在读取前我们一般需要使用hasNext( )与hasNextLine( )判断是否还有输入的数据。

在这里插入图片描述

程序最后记得输入scanner.close()关闭scanner,减少资源的占用

2.顺序结构

  • JAVA的基本结构就是顺序结构,除非特别声明,否则就按照顺序一句一句执行。
  • 顺序结构是最简单的结构算法。
  • 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个短发都离不开的一种基本算法结构。

3.选择结构

  • if单选结构

我们很多时候需要去判断一个东西是否可行,然后我们采取执行,这样一个过程在程序中用if语句表示

语法

if(布尔表达式){
//如果布尔表达式为true将执行的语句}

在这里插入图片描述

  • if双选择结构

场景:公司要收购一个软件,成功了:给人支付100万元,失败了:自己找人开发。

在这种场景下用一个if就搞不定了,我们需要有两个判断,需要一个双选择结构(if-else

语法:

if(布尔表达式){
//如果布尔表达式的值为true}else{
//如果布尔表达式的值为false}

在这里插入图片描述

  • if多选择结构

场景:可能真实情况可能存在ABCD等多种选择,存在区间多级判断。比如90-100就是A,80-90就流程控制图是B…,生活中我们有很多时候的选择也不仅仅只有两个,多以我们需要一个多选择结构来处理这类问题!

语法:

if(布尔表达式1){
//如果布尔表达式 1的值为true,则执行}else if(布尔表达式2){
//如果布尔表达式 2的值为true,则执行}else if(布尔表达式3){
//如果布尔表达式 3的值为true,则执行}else{
//如果以上布尔表达式都不为true,执行代码}

在这里插入图片描述

  • 嵌套的if结构

使用嵌套的if…else语句是合法的。也就是说你可以在另一个if或者else if语句中使用if或者else if语句。你可以像if语句一样嵌套else if…else。

语法:

if(布尔表达式1){
//如果布尔表达式 1的值为true,执行
if(布尔表达式2){
//如果布尔表达式 2的值为true,执行
}}

思考?我们需要寻找一个数,在1-100之间(提示:二分法)

  • switch多选择结构

  1. 多选择结构还有一个实现方式就是switch case语句。
  2. switch case语句判断一个变量与一系列值中某个值是否相等,每个值成为一个分支。
  3. switch语句中的变量类型可以是:
  • byte、short、int或者char
  • 从Java SE 7开始,switch支持字符串String类型了
  • 同时case标签必须为字符串常量或字面量。
switch(expression){
case value:
//语句
break;
case value:
//语句
break;
//你可以有任意数量的case语句
default://可选        //语句}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

顺着文件找到我们当时写代码前建好的包,找到class文件

在这里插入图片描述

我们无法直接把文件从IDEA上粘流程控制语句贴上去,所以需要找到存放java文件的文件夹,直接把class文件放进去

在这里插入图片描述

总结:

  • 每一个对象都有自己的hashCode,每一个字符中文都有它对应的hash值,然后IDEA通过hash值来判断比较

  • 代码编译以后,在字节码他就是像(上图)这样执行的

  • 直接把class文件丢到IDEA里面就可以查看他的源码(简单暴力的反编译方法),如果想下一些其它的反编译工具可以自行百度

  • 多看源码!

更多相关学习推荐:java基础

以上就是Java流程控制介绍的详细内容,更多内容请关注素材库中知识库其他相关文章

© 版权声明
评论 抢沙发
  • Miraitowa的头像-素材库

    昵称

  • 取消
    昵称表情代码图片