09、Java流程控制_1、用户交互scanner

scanner类,获取用户的键盘输入,进行人机交互

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。

System.in作为InputStream类的对象实现标准输入,可以调用它的read方法来读取键盘数据。

System.out作为PrintStream打印流类的对象实现标准输出,可以调用它的print、println或write方法来输出各种类型的数据。

import java.util.Scanner;
public class scanner {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接收键盘数据
        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();

    }

 

next()

1、一定要读取到有效数据才能结束。

2、对输入有效数据以前的空格,自动将其取消。

3、输入有效数字后,后面的空格,会作为分隔符或结束符,空格后面无有效字符。

4、不能接收带有空格的字符串。

nextLIne()

1、以enter符结束

2、可以获取空格

public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int i=0;
        float f=0.0f;
        //判断输入的是否为int类型,返回Boolean类型
        if (scanner.hasNextInt()){
            i=scanner.nextInt();
            System.out.println("整数:"+i);
        }else {
            System.out.println("不是整数");
        }

        //判断输入的是否为float类型,返回Boolean类型,输入int型,自动转换为float
        if (scanner.hasNextFloat()){
            f=scanner.nextFloat();
            System.out.println("小数"+f);
        }else{
            System.out.println("不是小数");
        }
        scanner.close();
    }

 

posted @ 2022-07-09 21:37  颓废且努力奋斗的人  阅读(36)  评论(0)    收藏  举报