使用Scanner接收用户输入

扫描输入的两种方式

Scanner主要提供了两个方法来扫描输入:
 (1)hasNextXxx():是否还有下一个输入项,Xxx可以是Int,Long等代表基本数据类型的字符串。
 如果只是判断是否包含下一个字符串,则直接使用hasNext();
 (2) nextXxx():获取下一个输入项。Xxx的含义与前一个方法的含义相同
 默认情况下,Scanner使用空白(空格、Tab、回车)作为多个输入项之间的分隔符
 

按个获取:

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

        while (scanner.hasNext()) {
            System.out.println("键盘输入的内容为:"+ scanner.next());
        }
    }

 测试结果:

按行获取:

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

        while (scanner.hasNextLine()) {
            System.out.println("键盘输入的内容为:"+ scanner.nextLine());
        }
    }

 测试结果:

 笔试中常见接收输入操作:

(1)接收一个int类型数组和一个target整数

        //System.in为标准键盘输入
        Scanner scanner = new Scanner(System.in);

        //只把回车作为分隔符
        //scanner.useDelimiter("\n");

        //类型1:接收一个int类型数组nums[] 和一个target
        System.out.print("请输入数组:");
        String input = scanner.nextLine();

        String[] numsString = input.split(",");
        int[] nums = new int[numsString.length];
        //转换为int类型数组
        for (int i = 0; i < numsString.length; i++) {
            nums[i] = Integer.parseInt(numsString[i].trim());
        }

        System.out.print("请输入目标整数:");
        int target = scanner.nextInt();
        scanner.nextLine(); // 清除输入缓冲区中的回车键

 (2)接收一个字符串

        //类型2:接收一个字符串
        System.out.print("请输入字符串:");
        String str = scanner.nextLine();

 (3)接收一个字符串类型的数组

        //类型3:接收一个字符串类型的数组
        System.out.print("请输入字符串数组,每个元素用空格分隔:");
        String str2 = scanner.nextLine();
        String[] stringArray = str2.split(" ");

(4)接收一个char类型数组

        //类型4:接收一个char类型数组
        System.out.print("请输入字符数组,不用分隔:");
        String str3= scanner.nextLine();
        char[] charArray = str3.toCharArray();

        scanner.close();

 

猜你喜欢

转载自blog.csdn.net/weixin_49561506/article/details/132307771