Java流程控制与Scanner类的使用

Scanner类

  • Scanner类可以使程序接受键盘输入,实现人机交互

    一个完整的Scanner的使用例子:

    //创建一个扫描器对象,用于接收键盘数据
    Scanner s=new Scanner(System.in);
    System.out.println("使用next方法接收:");
    //判断用户有没有输入字符串
    if(s.hasNext()){
    System.out.println("使用next接收数据:");
    String a=s.next();
    System.out.println("输出的内容为:"+a);
    }
    //重点:这步必须加,因为Scanner是属于io流的类,所以使用后必须关闭,不然会一直占用内存空间
    s.close();
  • 注意:next只能输出空格前的字符串,nextline可能输出空格后的字符串

  • 将接收语句放进循环就可以从键盘循环输入数据,直到不符合循环的条件表达式

  • 可以将循环的条件表达式写为判断用户有没有从键盘输入,直到输入不符合规范的字符时跳出循环

Java流程控制

  • 顺序结构

    Java中所有的程序都是顺序结构

  • 选择结构

    if if-else 多重if 嵌套if switch结构

    if结构

    //表达式为true,则执行语句,否则,直接跳过
    if(条件表达式){
    要执行的语句;
    }

    if-else结构

    //表达式为true,则执行语句,否则,执行else中的语句
    if(条件表达式){
    执行的语句
    }else{
    执行的语句
    }

    多重if结构

    //适合解决同一种事,但分多种情况,例如成绩管理,100-90,卓越,90-80,优秀,80-70,良好,70-60,及格,60-0,不及格
    if(条件表达式){
    执行的语句
    }else if(条件表达式){
    执行的语句
    }else if(条件表达式){
    执行的语句
    }else{
    执行的语句
    }
    //注意:else if就是将上一句的条件表达式取反,并与if后的条件表达式相交

    嵌套if结构

    //嵌套if就是if语句中还有if语句,另外我们所学的选择结构和循环结构都是可以互相嵌套的,来实现我们想要的功能
    if(条件表达式){
    if(条件表达式){
    执行的语句
    }
    }else{
    执行的语句
    }
  • 循环结构

    while do-while for 增强型for

    while结构

    //如果表达式结果为true,则进入循环,直到不满足条件时结束,因此while中必须要有一个迭代,使得不进入死循环
    while(条件表达式){
    执行的语句
    }

    do-while结构

    //do-while循环中的语句至少会执行一次
    do{
    执行的语句 }while(条件表达式)

    for结构

    //for循环的特点是,定义变量,条件表达式,迭代都是在for循环中定义的,for循环是最灵活,最有效地循环
    for(int i=1;i<=5;i++){
    System.out.println(i+"\t");
    }
    //for循环的快捷键,数字.for

    增强型for结构

    //就是为数组而生的,将数组中的每一个元素都一一赋值给x,for每循环一次赋一个
    int[] numbers={1,2,3,4,5,6}
    for(int x:numbers){
    System.out.println(x);
    }
    //增强型for循环的快捷键,数组.for

Java流程控制与Scanner类的使用的更多相关文章

  1. Java流程控制(Scanner)

    3.1用户交互Scanner 可以通过Scanner类来获取用户的输入: 语法: Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextL ...

  2. 第4天 JavaDoc生成文档&Java流程控制(第一节:用户交互Scanner)

    JavaDoc生成文档 javadoc命令是用来生成自己的API文档 参数信息: @author 作者名 @version 版本号 @since 指明需要最早使用的jdk版本 @param 参数名 @ ...

  3. JAVA流程控制

    JAVA流程控制 example1: --输出九九乘法表 public class chengfabiao { public static void main (String[] args){     ...

  4. 038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结

    038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结 本文知识点:案例演示switch结构并对sw ...

  5. 4. Java流程控制

    4.Java流程控制 4.1.用户交互Scanner 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.java.util.Scann ...

  6. Java学习笔记之:Java流程控制

    一.介绍 Java流程控制包括顺序控制.条件控制和循环控制. 顺序控制,就是从头到尾依次执行每条语句操作.条件控制,基于条件选择执行语句,比方说,如果条件成立,则执行操作A,或者如果条件成立,则执行操 ...

  7. Java流程控制练习--万年历

    Java流程控制练习--万年历 标签: Java入坑之旅 0x01. 打印倒三角和正三角 public static void main(String[] args) { // TODO Auto-g ...

  8. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

  9. 048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例——阶乘的累加和

    048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例--阶乘的累加和 本文知识点:通过案例练习嵌套循环应用 案例练习--阶乘的累加和 案例题目 ...

随机推荐

  1. vue第五单元(v-if和v-show以及v-for的灵活应用 watch以及computed的区别 (常见效果) #课程目标

    第五单元(v-if和v-show以及v-for的灵活应用 watch以及computed的区别 (常见效果) #课程目标 精通 v-if v-else v-else-if 的使用 精通 v-show  ...

  2. Raft算法系列教程1:Leader选举

    1.服务器的三种角色 Raft算法中服务器主要分为三种角色:Leader.Follower.Candidate,并且三种角色相互独立,也就是服务器在同一时间内只可能扮演其中一种角色. Leader:用 ...

  3. 在python中元组与列表的区别及序列解包

    一. 元组与列表的区别 元组中的数据一旦定义就不允许更改. 元组没有append().extend()和insert()等方法,无法向元组中添加元素. 元组没有remove()或pop()方法,也无法 ...

  4. HCIP --- MPLS BGP 实验

    实验要求: 实验拓扑: 一.配置IP地址 二.给AS 2配置OSPF 1.R2-R7配置相同: 查看路由表: 可以看到,业务网段学的是32位的 修改:在R2-R7上都修改 [R2]int loo1[R ...

  5. 认识 YUV

    什么是 YUV YUV是一种颜色编码格式,可以说YUV流媒体是原始流数据,大部分的视频领域都在使用.与RGB类似,但RGB更多的用于渲染时,而YUV则用在数据传输,因为它占用更少的频宽.当然,实时通讯 ...

  6. 如果不空null并且不是空字符串才去修改这个值,但这样写只能针对字符串(String)类型,如果是Integer类型的话就会有问题了。 int i = 0; i!=''。 mybatis中会返回tr

    mybatis 参数为Integer型数据并赋值0时,有这样一个问题: mybatis.xml中有if判断条件判断参数不为空时,赋值为0的Integer参数被mybatis判断为空,因此不执行< ...

  7. CRM、DMP、CDP概念解析

    CRM.DMP.CDP,都是什么鬼?有什么区别差异?别说你都懂 摘自https://maxket.com/crm-dmp-cdp/ 如果您不想多花人生中宝贵的十分钟,那么不用多考虑了,上CDP吧.如果 ...

  8. Spring Boot 自动配置之@Conditional的使用

    Spring Boot自动配置的"魔法"是如何实现的? 转自-https://sylvanassun.github.io/2018/01/08/2018-01-08-spring_ ...

  9. Spring3 MVC 注解(一)---注解基本配置及@controller和 @RequestMapping 常用解释(转)

      一:配置web.xml 1)问题:spring项目中有多个配置文件mvc.xml   dao.xml 2)解决:在web.xml中 <init-param> <param-nam ...

  10. AgileConfig-如何使用AgileConfig.Client读取配置

    前面的文章(AgileConfig基于.NetCore的一个轻量级配置中心,AgileConfig轻量级配置中心 1.1.0 发布,支持应用间配置继承)都是介绍AgileConfig服务端已经控制台是 ...