Java

java的scanner怎样简化输入操作

小樊
83
2024-09-24 01:19:06
栏目: 编程语言

Java的Scanner类提供了一系列方法来简化输入操作。以下是一些常用的方法:

  1. nextLine():读取一行文本,包括空格。这是最常用的方法之一。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一行文本:");
        String input = scanner.nextLine();
        System.out.println("你输入的是:" + input);
    }
}
  1. nextInt():读取一个整数。如果输入的不是整数,会抛出InputMismatchException异常。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int number = scanner.nextInt();
        System.out.println("你输入的整数是:" + number);
    }
}
  1. nextDouble():读取一个双精度浮点数。如果输入的不是双精度浮点数,会抛出InputMismatchException异常。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个双精度浮点数:");
        double decimal = scanner.nextDouble();
        System.out.println("你输入的双精度浮点数是:" + decimal);
    }
}
  1. nextFloat():读取一个单精度浮点数。如果输入的不是单精度浮点数,会抛出InputMismatchException异常。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个单精度浮点数:");
        float singleDecimal = scanner.nextFloat();
        System.out.println("你输入的单精度浮点数是:" + singleDecimal);
    }
}
  1. nextBoolean():读取一个布尔值。如果输入的不是布尔值(“true"或"false”),会抛出InputMismatchException异常。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个布尔值(true或false):");
        boolean flag = scanner.nextBoolean();
        System.out.println("你输入的布尔值是:" + flag);
    }
}
  1. next():读取下一个输入的token(标记)。token可以是任何数据类型,具体取决于输入的数据。这个方法需要配合nextLine()方法使用,以便在读取下一个token之前消耗掉换行符。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一行文本:");
        scanner.nextLine(); // 消耗换行符
        System.out.println("请输入一个整数:");
        int number = scanner.nextInt();
        System.out.println("你输入的整数是:" + number);
    }
}
  1. hasNext():检查是否还有下一个输入的token。这个方法可以用来判断是否已经到达输入的末尾。
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一行文本:");
        scanner.nextLine(); // 消耗换行符
        if (scanner.hasNextInt()) {
            System.out.println("请输入一个整数:");
            int number = scanner.nextInt();
            System.out.println("你输入的整数是:" + number);
        } else {
            System.out.println("没有下一个整数");
        }
    }
}

0
看了该问题的人还看了