Scanner的用法

在Java中我们可以使用Scanner类来读取用户输入的数据,下面来讲下它的具体用法。

导包:

import java.util.Scanner;

创建Scanner类的基本语法:

 

Scanner sc = new Scanner(System.in);

示例具体用法: 

package step;

import java.util.Scanner; // 导包

public class SC {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in); // 创建Scanner对象sc
        byte a = sc.nextByte(); // byte型
        short b = sc.nextShort(); // short型
        int c = sc.nextInt(); // int型
        long d = sc.nextLong(); // long型
        float e = sc.nextFloat(); // float型
        double f = sc.nextDouble(); // double型
        // Java中没有sc.nextChar(),但可以用接收字符串第一个字符的方法来接收单个字符
        char g = sc.next().charAt(0); // char型
        String h = sc.next(); // String型
        // 输出
        System.out.println(a + " " + b + " " + c + " " + d + " " + e
                + " " + f + " " + g + " " + h);
    }
}
输入:
1
1
1
1
1
1
1
1
输出:
1 1 1 1 1.0 1.0 1 1

除以上使用方法外,还有常用的nextLine() 

nextLine和next都可以用来接收String字符串,但是二者又存在区别:

(1)next()不接收空格,当一串字符以空格开头时,next会“自动过滤”掉开头的空格,接收到有效字符串后遇到空格或者换行都会结束字符串的接收

(2)nextLine()可以接收空格,空格并不会结束读入

next()和nextLine()示例如下: 

package step;

import java.util.Scanner;
// next()
public class SC {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String next_test = sc.next();
        System.out.println(next_test);
    }
}
// 输入、输出如下:(为方便观察,空格用*代替)
输入:***i***j***
输出:i

package step;

import java.util.Scanner;
// nextLine()
public class SC {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String nextLine_test = sc.nextLine();
        System.out.println(nextLine_test);
    }
}
​
// 输入、输出如下:(为方便观察,空格用*代替)
输入:***i***j***
输出:***i***j***

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值