首页 > 其他 > 详细

Scanner对象

时间:2020-11-04 10:04:58      阅读:30      评论:0      收藏:0      [点我收藏+]

Scanner对象

通过Scanner类来获取用户的输入。

使用需导入 java.util.Scanner 包。

基本语法:

Scanner s = new Scanner(System.in);

next()

package Scanner;
import java.util.Scanner;//导入包
public class Demon1 {
    public static void main(String[] args) {
        //变量类型 变量名     创建一个扫描器对象↓  
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用next方法接收");
      //判断语句 判断是否有输入↓
        if(scanner.hasNext()){
            //当↑为真,则有输入,使用scanner.next()赋值给str
            String str = scanner.next();
            System.out.println("输入内容为:"+ str);
            //输出用户输入值
        }
        scanner.close();//关闭scanner
    }
}
  1. 读取到有效字符后才可以结束输入
  2. 对有效字符前的空白,会自动删除
  3. 只有输入有效字符后才能将后面输入的空白作为分隔或结束符
  4. next()不能得到带有空格的字符串。

nextLine()

package Scanner;
import java.util.Scanner;
public class Demon2 {
    public static void main(String[] args) {
        //变量类型 变量名     创建一个扫描器对象↓
        Scanner scanner = new Scanner(System.in);
        System.out.println("使用nextLine方法接收");
        //判断语句 判断是否有输入↓
        if(scanner.hasNextLine()){
            //当↑为真,则有输入,使用scanner.next()赋值给str
            String str = scanner.nextLine();
            System.out.println("输入内容为:"+ str);
            //输出用户输入值
        }
        scanner.close();//关闭scanner
    }
}
  1. 以Enter为结束符,即返回回车之前的所有字符(包括空格)
  2. nextLine()可以获得空格

故平时多使用nextLine()


上面两个程序,删除if判断语句依然能够使用。程序会在

String str = scanner.nextLine();

等待用户输入。

Scanner scanner = new Scanner(System.in);//创建scanner
String str = scanner.nextLine();//获得输入值
scanner.close();//关闭scanner

以上三步可以说是固定形式


Scanner的进阶用法

nextInt() nextFloat() .....

package Scanner;
import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;

import java.sql.SQLOutput;
import java.util.Scanner;
public class Demon3 {
    public static void main(String[] args) {


    int i =0;
    float f = 0.0f;

    Scanner scanner = new Scanner(System.in);
        System.out.println("请输入整数");
        if(scanner.hasNextInt())//判断是否有整数输入
        {
            i = scanner.nextInt();
            System.out.println("你输入的数字为:"+ i);
        }
        else {
            System.out.println("你tm输入的不是整数");
        }
    scanner.close();
}
}

判断是否为小数同理。

求平均值的程序

在用户输入非数字后计算出平均值。

import java.sql.SQLOutput;
import java.util.Scanner;

public class Demon4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int x =0;//数字个数
        double sum = 0.0;//数字和
        double u = 0.0;//新输入数字
        System.out.println("请输入数字");
        while (scanner.hasNextDouble()){
            System.out.println("请继续输入数字...");
            u = scanner.nextDouble();//获得输入数字
            sum = sum + u;//计算合
            x++; //统计输入了几个数字

        }
        System.out.println(x+"个数的总和为:"+sum);
        System.out.println(x+"个数的平均值为:"+(sum/x));
        scanner.close();
    }
}

技术分享图片

Scanner对象

原文:https://www.cnblogs.com/patientLIN/p/13924101.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!