首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Java流程控制

  • 25-02-16 17:20
  • 4806
  • 6999
blog.csdn.net

用户交互scanner

scanner类对象用于获取用户的输入。

先创建一个Scanner对象

Scanner 对象名 = nwe Scanner(Syetem.in)

再通过Scanner类的next()和nextline()方法获取输入的字符串,在读取前一般使用hasNext()和hasNextline()判断是否有输入的数据。

凡是属于IO(输入输出)流的类如果不关闭会一直占用资源,要养成好习惯用完就关掉。

next()只读取空格前的有效字符串。

nextline()以enter为结束符,一般使用这个方式接收。

下面是实际操作

图二

能运行,但是......不好说,如下图,第一次输入不能输入字符,否则程序运行不了,第二次输入可以输字符,但是输入整数,输出的结果却是小数。一看就是我自己认真写的,别人不可能写这么烂,也不是随便输入然后狂按tab键,如果是不会写得这么烂emmmmmm。

顺序结构(简单)

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

选择结构

if单选结构

语法:

有一个方法equals,单词意思是平等的,这个方法是来判断输入的字符串是否等于某些字符串,具体操作如下。

具体操作

输入如果不为hello,那将只会输出一个End,如果输入为hello,那将会输出一个hello和一个End。

if双选结构

与双选结构类似,但是有两个选择,只会输出一个结果,有种非此即彼的感觉。

语法

具体代码如下。

如果输入为hello,那么输出也为hello,且只有hello,如果输入不为hello,那么输出结果只为End。

    if多选结构

      拥有更多的选择,除了黑与白之外还有灰。

      具体代码如下

      这个程序的输出有三种可能

      1. 当输入大于等于90时,输出为“YOU WIN”;
      2. 当输入小于等于60时,输出为“YOU LOSE!”;
      3. 当输入大于80小于小于90时,输出为“YOU DRAW!”。

      注意,if语句下面需要一个else语句,虽然没有程序也能执行,或许是为了程序的可读性和严谨吧。

      嵌套的if结构

      意思就是可以套娃,一环套一环,可以在一个if结构嵌套另一个if结构。

      语法

      具体代码

      没有截屏到Scanner close;

      输出结果

      switch多选择结构

      多选择结构还有一个实现方式就是switch case语句,switch case语句判断一个变量与一系列值中的某个值是否相等,每个值称为一个分支。

      switch语句的变量可以是byte,short,int或char,支持字符串string类型,同时case标签必须为字符串常量或者字面量。

      case具有穿透能力,如果不在分支后面加入break,就会将匹配到的那个分支后面的选项也输出。具体操作如下,

      运行结果

      为什么可以输入两次?case的穿透功能呢?解决了输入两次的问题,虽然还不知道什么原理。

      应该这么写。case的穿透能力目前还不清楚为什么失效了,奇怪,没有了break也不会穿透???

      循环结构

      可以多次循环一个结构,布尔表达式为"true"则为死循环。

      while循环

      语法

      具体代码

      sum是变量名

      while循环满足的条件是a<=100,加上a的自增,然后再进行下一步的运算,变量sum等于a加一,

      假设第一轮得到的sum的值为0,由于第二轮a自增了,sum的值为0+1,第三轮sum的值为1+2,第四轮sum的值为1+2+3。我的理解是每轮计算开始之前的sum值是上一轮sum+=a的结果,上一轮sum的结果可能是1+2+3+4+...n,那么这一轮的sum的值可能是1+2+3+4+...+n+n+1。这里的n是上一轮结束后的a,这一轮的a就是n加一。

      上面这段文字自己想的,标个颜色区分一下,哈哈,好有成就感,虽然我知道理解这个代码对别人来说很简单,但我不想对比别人,否则成就感就要消失了(^~^)。

      do while循环

      与while循环类似,区别是无论是否满足条件都至少会循环一次,将while和布尔表达式放到了后面,所有的结构都满足顺序结构。语法如下

      for循环

      初始化我的理解是定义一个数据类型,比如int a = 0;

      布尔表达式我的理解是条件判断。

      更新也可以称为迭代,例如通过让变量a不断地自增,来迭代,否则可能一个数字会循环无数遍,刚刚试了一下。

      for循环语句是一种支持迭代的通用结构,是最灵活的,最有效的循环结构。

      for循环的执行次数在执行前就确定了。

      一个死循环。

      注:本文转载自blog.csdn.net的2401_82937671的文章"https://blog.csdn.net/2401_82937682/article/details/145443793"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
      复制链接
      复制链接
      相关推荐
      发表评论
      登录后才能发表评论和回复 注册

      / 登录

      评论记录:

      未查询到任何数据!
      回复评论:

      分类栏目

      后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

      热门文章

      107
      Java
      关于我们 隐私政策 免责声明 联系我们
      Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
      Scroll to Top