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. Offer经验分享 - 蚂蚁金服、字节跳动、PDD、百度、华为、Paypal - Java社招面经

    年中的时候因为换工作的缘故,陆续参加了华为.蚂蚁.字节跳动.PDD.百度.Paypal的社招面试,除了字节跳动流程较长,我主动结束面试以外,其他的都顺利拿到了Offer. 最近时间稍微宽裕点了,写个面 ...

  2. H3C路由器配置——动态路由OSPF协议

    一.介绍 1.OSPF协议介绍 (1).OSPF(Open Shortest Path First,开放最短路径优先)路由协议是用于网际协议(IP)网络的链路状态路由协议.是一个被各厂商设备广泛支持的 ...

  3. SonarQube - 以Docker方式启动SonarQube

    1 - SonarQube镜像 https://hub.docker.com/_/sonarqube/ Dockerfile - 7.9.1-community https://github.com/ ...

  4. 后端Long类型传到前端精度丢失的正确解决方式

    原因:前端js对Long类型支持的精度不够,导致后端使用的Long传到前端丢失精度,比如现在分布式id生成算法"雪花算法"在使用中就会出现问题. 解决方式: 1.后端的Long类型 ...

  5. 多人VNC远程桌面服务配置

    博主前篇博客里面已经讲过VNC的配置,为了方便查看,单独拿出来写一下. (1) 搜索可以用来安装vncserver的软件包: sudo apt-cache search vncserver (2) 安 ...

  6. eclipse开启的时候adb.exe会自动开启么 怎么让它跟着eclipse自动开启

    会的,Eclipse 参数页中的 General > Startup and Shutdown 中默认 Android Development Tools 是自动激活的,它会启动 adb.exe ...

  7. java中变量和标识符名命名规范

    变量存放的是内存地址,当定义一个变量后,我们可以通过变量名找到该内存地址,可以修改该内存区间的值. 标识符的命名规范:首字母:字母,下划线,$符号:其余部分:数字,字母,下划线,$. 标识符应该避开j ...

  8. Redis学习之路(一)Redis简介

    一.Redis简介 是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求.(区别于MYSQL的二维表格的形式存储).和Memcache类似,但是很大程度上拟补 ...

  9. 初学VBA

    一个最基本的VBA程序 Sub test() //宏开始 Dim ge As Range //定义变量 For Each ge In Range("a1:a10") //从a1到a ...

  10. dede织梦技巧:教你彻底解决dede按权重排序的问题(转)

    dede排序对网站来说一直存在问题,默认是按照最新发布时间排序.这样排序有个问题,一旦更新之后即被视为最新发布,于是原本做好的排序瞬间就乱了. 这种时候,按权重排序是个很好的选择,但按权重排序到处存在 ...