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,可以看到每个步骤的情况!!!

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

(0)

相关推荐

  • Java通过Scanner了解if...else if语句

    这篇文章主要介绍了Java通过Scanner了解if...else if语句,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用Scanner类(控制台输入)来认识一下if...else if语句 if ....else if 是连续型的条件语句 判断条件有多个 的时候可以使用 使用时机:多条件 要跟划分区间一样的时候 0~59分 不及格 60~80分 不错 81~90分 很棒 91~100 成绩超级好 其余条件 都是不合法 import ja

  • java 使用Scanner类接收从控制台输入的数据方式

    接收从控制台输入的数据可以使用Scanner类实现,Scanner类在一个名为util的包中 需要在程序中导入这个包, 即在程序中添加 import java.util.*; Scanner类可以接收int string char boolean 等类型数据,其中string类型数据使用next() 或者 nextLine() 方法接收 使用方法如下: //首先创建一个Scanner的对象 Scanner scanner = new Scanner(System.in); //定义一个变量,调用

  • Java使用Scanner类进行控制台输入实现方法

    在Java中,不像Python一样直接用个input()就行的.Java控制台输入比较麻烦,下面是比较易懂的教程. 首先,新建一个调用Java的Scanner(扫描仪)的类,新建main方法. import java.util.Scanner; public class scanner { public static void main(String[] args) { } } 在main方法中新建一个Scanner的对象实例. Scanner enter = new Scanner(Syste

  • Java Scanner类的使用示例

    1 Scanner的使用 JDK给我们提供了成千上万个类供我们直接使用,而Scanner就是这众多类里的一个最常用的一个类,既然它是一个类,我们使用它的方法和使用我们自己写的类的方法基本一致. 方法基本如下: 1.导包:就是指出需要使用的类在哪一个位置,格式一般为import 包名称.类名称,Scanner导包语句便为import java.util.Scanner对于和当前类属于同一个包的时候,导包语句可以不写,JDK里提供的类仅仅只有java.lang下的类不需要导包. 2.创建:按照格式创

  • 浅析Java Scanner 类的用法

    java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入. 下面是创建 Scanner 对象的基本语法: Scanner s = new Scanner(System.in); 接下来我们演示一个最简单的数据输入,并通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要 使用 hasNext 与 hasNextLine 判断是否还有输入的数据: 使用 next 方法: import ja

  • java自定义Scanner类似功能类的实例讲解

    读取键盘输入 package com.zjx.io; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * 面试题 * 读取键盘各个数据类型 * */ public class TestFaceIo { public static void main(String[] args) { System.out.print("请输入姓名: "); S

  • sonar-scanner连接sonarquebe7的sonar.java.binaries问题的解决方案

    Sonar-Scanner连接新版SonarQube7提示org.sonar.squidbridge.api.AnalysisException,暂定将sonar-java-plugin降到4.10恢复正常使用. 现象描述 以一下版本Sonar-Scanner连接SonarQube进行Maven项目的代码检测,没有任何问题. Sonar-Scanner命令 使用命令sonar-scanner,使用-D传入以下参数 问题描述 在仅仅升级了SonarQube到7.0之后,使用同样的sonar-sca

  • Java Scanner类用法及nextLine()产生的换行符问题实例分析

    本文实例讲述了Java Scanner类用法及nextLine()产生的换行符问题.分享给大家供大家参考,具体如下: 分析理解:Scanner sc = new Scanner(System.in); package cn.itcast_01; /* * Scanner:用于接收键盘录入数据. * * 前面的时候: * A:导包 * B:创建对象 * C:调用方法 * * 分析理解:Scanner sc = new Scanner(System.in); * System类下有一个静态的字段:

  • Java使用Scanner类获取用户输入实例详解

    创建 Scanner 对象的基本语法: Scanner s = new Scanner(System.in); Scanner 类的 next() 方法 import java.util.Scanner; class Test{ public static void main(String[] args){ String s; Scanner userInput = new Scanner(System.in); System.out.print("Input String: ");

  • Java Scanner类及其方法使用图解

    1.导包 java.util:import java.util.Scanner; 2.创建对象 Scanner x=new Scanner(System.in); 3.做事情 int value=x.nextInt(); String value=x.nextLine(); nextInt(nextFloat nextByte) next nextLine 1.读取方式上来讲 大家都以回车符作为结束符号: 除了nextLine以外其余的方法都不读取回车符: 2.读取的返回结果来讲:nextInt

随机推荐