scanner输入各种类型的数据,Scanner下next()和nextLine()的区别,nextInt()后读取空后跟nextLine()

Scanner里面读字符没有char,全部都是String

Scanner输入的完整步骤如下:想输入什么类型的数据调用什么类型的功能就行。

public class ScannerDemo {
    public static void main(String[] args) {
        //1.创建一个Scanner对象
        Scanner scanner=new Scanner(System.in);
        //2.读取用户录入的数据 读取一个完整的学生信息
        //从光标/指针之后开始读取数据
        System.out.println("请录入学生的ID:");
        int id=scanner.nextInt();

        System.out.println("请录入学生的name:");
        String name=scanner.next();

        System.out.println("请录入"+name+"的age:");
        byte age=scanner.nextByte();

        System.out.println("请录入"+name+"的score:");
        double score=scanner.nextDouble();

        System.out.println("请录入"+name+"的gender:");
        String gender=scanner.next();
        System.out.println("id为"+id);
        System.out.println("name为"+name);
        System.out.println("age为"+age);
        System.out.println("score为"+score);
        System.out.println("gender为"+gender);

        //3.释放资源
        scanner.close();
    }
}
程序运行结果如下:
请录入学生的ID:
84
请录入学生的name:
熊二
请录入熊二的age:
5
请录入熊二的score:
99.99
请录入熊二的gender:
男
id为84
name为熊二
age为5
score为99.99
gender为男

Process finished with exit code 0

next()和nextLine()区别;

通过scanner的nextLine()功能获取数据如下:
package com.javasm.if_;

import java.util.Scanner;

/**
 * @author: JAVASM
 * @classNAME: ScannerDemo01
 * @description:
 * @date: 2021/3/26 19:34
 * @version:0.1
 * @since:1.8
 */
public class ScannerDemo01 {
    public static void main(String[] args) {
        //1.创建一个Scanner对象
        Scanner scanner=new Scanner(System.in);
        //2.读取用户录入的数据 读取一个完整的学生信息
        //从光标/指针之后开始读取数据
        System.out.println("请输入当前的时间:");//2021-03-16 12:00:00
        String time=scanner.nextLine();
        System.out.println("输出结果为"+time);

        //3.释放资源
        scanner.close();
    }
}
代码结果演示如下:
请输入当前的时间:
2021-03-16 12:00:00
输出结果为2021-03-16 12:00:00

Process finished with exit code 0

Scanner.next()代码演示如下:

package com.javasm.if_;

import java.util.Scanner;

/**
 * @author: JAVASM
 * @classNAME: ScannerDemo01
 * @description:
 * @date: 2021/3/26 19:34
 * @version:0.1
 * @since:1.8
 */
public class ScannerDemo01 {
    public static void main(String[] args) {
        //1.创建一个Scanner对象
        Scanner scanner=new Scanner(System.in);
        //2.读取用户录入的数据 读取一个完整的学生信息
        //从光标/指针之后开始读取数据
        System.out.println("请输入当前的时间:");//2021-03-16 12:00:00
        String time=scanner.next();
        System.out.println("输出结果为"+time);

        //3.释放资源
        scanner.close();
    }
}
输出结果为:
请输入当前的时间:
2021-03-16 12:00:00
输出结果为2021-03-16

scanner.next()只输出空格之前的内容,而scanner.nextLine()是输出整个一行的内容。

nextInt()后跟nextLine()读空,再跟nextLine()获取一整行数据。也可直接用next()代替nextLine(),就会控制台输入一个才能输入下一个

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值