流程控制

用户交互Scanner

  1. Scanner**对象**

    下面是创建 Scanner 对象的基本语法:

     Scanner s = new Scanner(System.in);

    接下来我们演示一个最简单的数据输入,并通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要 使用 hasNext() 与 hasNextLine() 判断是否还有输入的数据。

  1. next & nextLine

    public static void main(String[] args) { 
       //创建一个扫描器对象,用于接收键盘数据
       Scanner scanner = new Scanner(System.in); //next方式接收字符串
       System.out.println("Next方式接收:");
       //判断用户还有没有输入字符
       if (scanner.hasNext()){
           String str = scanner.next();      
           System.out.println("输入内容:"+str);
      }
       //凡是属于IO流的类如果不关闭会一直占用资源.要养成好习惯用完就关掉.就好像你接水完了要关 水龙头一样.很多下载软件或者视频软件如果你不彻底关,都会自己上传下载从而占用资源,你就会觉得 卡,这一个道理.
       scanner.close();
    }

    测试数据:Hello World!

    结果:只输出了Hello。

    public static void main(String[] args) { 
       Scanner scan = new Scanner(System.in);
       // 从键盘接收数据 // nextLine方式接收字符串
       System.out.println("nextLine方式接收:");
       // 判断是否还有输入
       if (scan.hasNextLine()) {
           String str2 = scan.nextLine();
           System.out.println("输入内容:" + str2);
      }
       scan.close();
    }

    测试数据:Hello World!

    结果:输出了Hello World!

    两者区别:

next():

  • 一定要读取到有效字符后才可以结束输入。

  • 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。

  • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

  • next() 不能得到带有空格的字符串。

nextLine():

  • 以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。

  • 可以获得空白。

三种结构

顺序结构

选择结构

if单选择结构

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

if双选择结构

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

if多选择结构

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

嵌套的if结构

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

switch多选择结构

switch(expression){
   case value :
       //语句
       break;
       //可选
   case value :
       //语句 break;
       //可选
       //你可以有任意数量的case语句
   default :
       //可选
       //语句
}

当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必

须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现

break 语句。switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何

位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分

支不需要 break 语句。

循环结构

主要三种循环结构

  • while 循环

  • do…while循环

  • for 循环

while先判断后执行。dowhile是先执行后判断!

99乘法表

for (int i = 1; i <= 9 ; i++) { 
   for (int j = 1; j <= i; j++) {
       System.out.println(j + "*" + i + "=" + (i * j));
  }
   System.out.println();
}

另外有增强for循环

for(声明语句 : 表达式) 
{
   //代码句子
}

JavaSE基础语法学习-流程控制的更多相关文章

  1. Java基础语法(4)-流程控制

    title: Java基础语法(4)-流程控制 blog: CSDN data: Java学习路线及视频 1.程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定 ...

  2. Java基础语法与流程控制

    Java基础语法与流程控制 跟着狂神学Java的第二天O(∩_∩)O~,养成一个总结的习惯 志同道合的小伙伴可以一起学习狂神的视频 本节地址:https://www.kuangstudy.com/co ...

  3. Unit04: JavaScript 概述 、 JavaScript 基础语法 、 流程控制

    Unit04: JavaScript 概述 . JavaScript 基础语法 . 流程控制 my.js function f3() { alert("唐胜伟"); } demo1 ...

  4. Java基础语法02——流程控制

    流程控制:顺序结构.分支结构(if-else.switch-case).循环结构(for.while.do-while)

  5. JavaSE基础语法学习-异常

    异常 异常指程序运行中出现的不期而至的各种状况,如:文件找不到.网络连接失败.非法参数等. 异常发生在程序运行期间,它影响了正常的程序执行流程. 比如说,你的代码少了一个分号,那么运行出来结果是提示是 ...

  6. python基础语法2 流程控制 if,while,for

    if语句: 什么是if? 主要是用于判断事物得对错,真假,是否可行 语法结构: python是通过缩进来决定代码的归属 pep8: 缩进一定是四个空格 tab键 if 条件: 代码块 .... ... ...

  7. JavaSE基础语法学习-方法&数组

    方法 Java方法是语句的集合,它们在一起执行一个功能. 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某 ...

  8. JavaSE基础语法学习

    标识符 表示类名的标识符用大写字母开始. 表示方法和变量的标识符用小写字母开始,后面的描述性词以大写开始. 注意 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($).或者下划线(_)开始 ...

  9. Scala学习教程笔记一之基础语法,条件控制,循环控制,函数,数组,集合

    前言:Scala的安装教程:http://www.cnblogs.com/biehongli/p/8065679.html 1:Scala之基础语法学习笔记: :声明val变量:可以使用val来声明变 ...

随机推荐

  1. CAD常用知识点

    1.Ctrl+9:打开命令窗口: 2.删除标注或者其他(选择对象过滤器):输入fi后回车会出现对象选择过滤器窗口,以删除标注为例,点击选择过滤器-----标注 按以下顺序点击后回车, 框选要去掉的标注 ...

  2. Winsock 编程详解

    转载请注明出处!本文地址:https://www.cnblogs.com/teternity/p/WinSock.html Winsock 编程 目录 通用函数讲解 WSAStartup WSACle ...

  3. php数据显示在html截取字符

    <?php    echo mb_subsrt($s['content'],0,20,'gbkj')?> gbk也可以是utf8根据实际情况来

  4. 转一个veth的文章

    这篇写的很好,清晰明白,保存一下https://www.cnblogs.com/bakari/p/10613710.html

  5. linux的pci驱动模型

    做个笔记 linux通过pcibios_scan_root函数以深度优先的算法搜索整个pci架构,建立一个树形的链表,如下: 之后再调用pci_bus_add_devices函数把所有搜索到的pci_ ...

  6. 2017年 实验三 C2C模拟实验

    [实验目的] 掌握网上购物的基本流程和C2C平台的运营 [实验条件] ⑴.个人计算机一台 ⑵.计算机通过局域网形式接入互联网. (3).奥派电子商务应用软件 [知识准备] 本实验需要的理论知识:C2C ...

  7. 多测师讲解 自动化测试理论(1)_高级讲师肖sir

    自动化测试理论什么是自动化测试?广义的:通过工具或程序替代或辅助人工测试的行为叫自动化测试狭义的:通过工具录制或编写脚本模拟手工测试的过程,通过回放或运行脚本执行测试用例,从而代替人工对系统的功能验证 ...

  8. html学习(3)

    为你的网页中添加一些空格 语法:   1 body> 2 <h1>感悟梦想</h1> 3 来源:作文网  作者:为梦想而飞 4 </body> 认识<h ...

  9. Linux系统编程—信号捕捉

    前面我们学习了信号产生的几种方式,而对于信号的处理有如下几种方式: 默认处理方式: 忽略: 捕捉. 信号的捕捉,说白了就是抓到一个信号后,执行我们指定的函数,或者执行我们指定的动作.下面详细介绍两个信 ...

  10. git的一些操作命令

    一,如何修改一个commit的注释? root@kubuntu:/data/git/clog# git commit --amend 说明:架构森林是一个专注架构的博客,地址:https://www. ...