Scanner

当然可以!在Java中,Scanner是一个类,它位于java.util包中。它提供了一种方便的方式来从标准输入(键盘)或其他输入源中读取用户输入。通过创建Scanner对象,你可以使用它的方法来解析基本类型和字符串。

要使用Scanner,首先需要导入它的包:

import java.util.Scanner;

接下来,你可以创建一个Scanner对象,并将其与输入源关联起来。最常见的是将其与标准输入(键盘)关联:

Scanner scanner = new Scanner(System.in);

现在,你可以使用Scanner对象的各种方法来读取不同类型的输入。以下是一些常用的方法:

  • nextBoolean():读取一个布尔值。
  • nextByte():读取一个字节值。
  • nextInt():读取一个整数。
  • nextLong():读取一个长整数。
  • nextFloat():读取一个浮点数。
  • nextDouble():读取一个双精度浮点数。
  • nextLine():读取一行文本。
  • next():读取下一个单词(以空白字符作为分隔符)。

以下是一个简单的示例,演示如何使用Scanner读取用户的输入并将其存储到变量中:

import java.util.Scanner;

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

        System.out.print("请输入你的名字:");
        String name = scanner.nextLine();

        System.out.print("请输入你的年龄:");
        int age = scanner.nextInt();

        System.out.println("你好," + name + "!你今年" + age + "岁。");
    }
}

在上面的示例中,首先使用nextLine()方法读取用户的名字,并将其存储到字符串变量name中。然后使用nextInt()方法读取用户的年龄,并将其存储到整数变量age中。最后,将这些值打印出来。

需要注意的是,Scanner类提供了许多其他的方法和选项,用于处理不同类型的输入和特殊情况。你可以根据具体需求查阅Java文档以获取更多信息。

练习Demo

package com.mek.demo;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        // 创建一个Scanner实例对象
        Scanner scanner = new Scanner(System.in);

        System.out.println("Your name?/你的名字?");


        /*
        scanner.hasNext()   判断是否有输入的内容;
        scanner.nextLine(); 用字符串获取全部输入内容;
         */
        if (scanner.hasNext()) {
            String name = scanner.nextLine();
            System.out.println(name);
        }



        System.out.println("input int/输入整数?");
        /*
        scanner.hasNextInt()()   判断是否为int类型;
        scanner.scanner.nextInt(); 用int获取全部输入内容;
         */
        if (scanner.hasNextInt()) {
            int age = scanner.nextInt();
            System.out.println(age);
        }

        System.out.println("input double/输入整数?");
        /*
        同上
         */
        if (scanner.hasNextDouble()) {
           double age = scanner.nextDouble();
            System.out.println(age);
        }else {
            System.out.println("输入错误!");
        }

        // 关闭Scanner实例对象
        scanner.close();

    }
}