Java用户交互scanner及运算结构代码详解

 更新时间:2020年12月10日 10:28:12   作者:None1014  
这篇文章主要介绍了Java用户交互scanner及运算结构代码详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

用户交互Scanner

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

next() 与 nextLine()

next():

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

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

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

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

		Scanner scanner = new Scanner(System.in);
    System.out.println("使用next方法接收:");
    //判断用户有没有输入字符串
    if(scanner.hasNext()){
      //使用next方法接收
      String str=scanner.next();
      System.out.println("输出内容为:"+str);
    }
    //凡是属于IO流的类如果不关闭会一直占用资源,良好习惯用完就关!
    scanner.close();

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

2、可以获得空白。

		Scanner scanner = new Scanner(System.in);
    System.out.println("使用nextLine方法接收:");
    //判断用户有没有输入字符串
    if(scanner.hasNextLine()){
      //使用nextLine方法接收
      String str = scanner.nextLine();
      System.out.println("输出内容为:"+str);
    }
    //凡是属于IO流的类如果不关闭会一直占用资源,良好习惯用完就关!
    scanner.close();

顺序与循环结构

  • 顺序结构
  • 选择结构
  • switch多选择结构

switch语句中的变量类型可以是:byte、short、int、或char

从JavaSE7开始,支持String类型,同时case标签必须为字符串变量或字面量

循环结构

  • while 循环
  • do while 循环

While和do-While的区别:

while先判断后执行。do-while是先执行后判断!

Do...while总是保证循环体会被至少执行一次! 这是他们的主要差别。

for循环

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

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

增强for循环

for(声明语句 : 表达式)
{
  //代码句子
}
int[] numbers={10,20,30,40,50};
for(int x:numbers){
  System.out.println(x);
}

声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

break 和 continue

break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)

continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

应用:打印三角形和 debug

public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {
      for (int j=5;j>=i;j--){
        System.out.print(" ");//打印空白区域
      }
      for (int j=1;j<=i;j++){
        System.out.print("*");//先打印左边半个三角形
      }
      for (int j=1;j<i;j++){
        System.out.print("*");//打印右边半个,算是补齐吧!
      }
      System.out.println();
    }
  }

关于debug设置断点:点击代码左侧区域,点击“瓢虫”开始debug,可以看到每个步骤的情况!!!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • maven项目错误:找不到或无法加载主类 XXX问题

    maven项目错误:找不到或无法加载主类 XXX问题

    这篇文章主要介绍了maven项目错误:找不到或无法加载主类 XXX问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • 使用java判断输入年份是否为闰年完整代码

    使用java判断输入年份是否为闰年完整代码

    闰年的引入确保了我们的日历与地球运行轨道的对齐,使得时间的计算更加准确,在编程中判断给定年份是否为闰年是一项常见的任务,这篇文章主要给大家介绍了关于使用java判断输入年份是否为闰年的相关资料,需要的朋友可以参考下
    2023-10-10
  • springboot升级Tomcat版本的方法示例

    springboot升级Tomcat版本的方法示例

    本文主要介绍了springboot升级Tomcat版本的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • 使用spring aop统一处理异常和打印日志方式

    使用spring aop统一处理异常和打印日志方式

    这篇文章主要介绍了使用spring aop统一处理异常和打印日志方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • spring cloud如何集成nacos配置中心

    spring cloud如何集成nacos配置中心

    这篇文章主要介绍了spring cloud如何集成nacos配置中心操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • JavaWeb-WebSocket浏览器服务器双向通信方式

    JavaWeb-WebSocket浏览器服务器双向通信方式

    文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配置类、服务编写和前端页面的实现
    2025-02-02
  • SpringBoot实现定时任务和异步调用

    SpringBoot实现定时任务和异步调用

    这篇文章主要为大家详细介绍了SpringBoot实现定时任务和异步调用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • Java中二叉树的建立和各种遍历实例代码

    Java中二叉树的建立和各种遍历实例代码

    这篇文章主要介绍了Java中二叉树的建立和各种遍历实例代码,涉及树节点的定义,后序遍历,层序遍历,深度优先和广度优先等相关内容,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 浅谈Spring boot cache使用和原理

    浅谈Spring boot cache使用和原理

    这篇文章主要介绍了浅谈Spring boot cache使用和原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • 浅谈Java回收对象的标记和对象的二次标记过程

    浅谈Java回收对象的标记和对象的二次标记过程

    这篇文章主要介绍了浅谈Java回收对象的标记和对象的二次标记过程的相关内容,小编觉得还是挺不错的,这里给大家分享一下,需要的朋友可以参考。
    2017-10-10

最新评论