Java学习笔记——Scanner类

目录

一、Scanner类的简介

二、Scanner类的常用方法

(一)nextxxx()

(二)hasNextxxx()

三、代码


一、Scanner类的简介

Scanner类主要用于扫描用户从控制台输入的文本。

Java学习笔记——Scanner类_第1张图片

二、Scanner类的常用方法

(一)nextxxx()

1、next()

  • 获取输入的字符串;
  • 不仅接受键盘输入的内容,还进行分割;
  • 默认的分隔符为空格,以回车Enter为结束符,回车enter后的内容则放入缓冲区。

2、nextLine()

  • 获取输入的字符串;
  • 可以加空格,以回车Enter为结束符;
  • 可以获得空白。

代码实例1

// next() && nextLine()
System.out.println("请输入一个字符串nextLine():");
String str1 = input.nextLine();
System.out.println(str1);

System.out.println("请输入一个字符串next():");
String str2 = input.next();
System.out.println(str2);

 输出结果1

Java学习笔记——Scanner类_第2张图片

3、nextBigDecimal():获取输入的BigDecimal类型的数字

4、nextBigInteger():获取输入的BigInteger类型的数字

5、nextBoolean():获取输入的Boolean类型,即true和false

6、nextByte():获取输入的Byte类型的数字

7、nextDouble():获取输入的Double类型的数字

8、nextFloat():获取输入的Float类型的数字

9、nextInt():获取输入的Int类型的数字

10、nextLong():获取输入的Long类型的数字

11、nextShort():获取输入的Short类型的数字

代码实例2

Scanner input = new Scanner(System.in);

/* nextxxx() */
// next() && nextLine()
System.out.println("请输入一个字符串nextLine():");
String str1 = input.nextLine();
System.out.println(str1);

System.out.println("请输入一个字符串next():");
String str2 = input.next();
System.out.println(str2);

// nextBigDecimal()
System.out.println("请输入一个BigDecimal类型的数字");
BigDecimal bd;
bd = input.nextBigDecimal();
System.out.println(bd);

// nextBigInteger()
System.out.println("请输入一个BigInteger类型的数字");
BigInteger bi;
bi = input.nextBigInteger();
System.out.println(bi);

// nextBoolean()
System.out.println("请输入一个Boolean类型");
boolean bl;
bl = input.nextBoolean();
System.out.println(bl);

// nextByte()
System.out.println("请输入一个Byte类型的数字");
byte by;
by = input.nextByte();
System.out.println(by);

// nextDouble()
System.out.println("请输入一个Double类型的数字");
double db;
db = input.nextDouble();
System.out.println(db);

// nextFloat()
System.out.println("请输入一个Float类型的数字");
float fl;
fl = input.nextFloat();
System.out.println(fl);

// nextInt()
System.out.println("请输入一个Int类型的数字");
int i;
i = input.nextInt();
System.out.println(i);

// nextLong()
System.out.println("请输入一个Long类型的数字");
long l;
l = input.nextLong();
System.out.println(l);

// nextShort()
System.out.println("请输入一个Short类型的数字");
short s;
s = input.nextShort();
System.out.println(s);

输出结果2 

Java学习笔记——Scanner类_第3张图片

Java学习笔记——Scanner类_第4张图片

(二)hasNextxxx()

1、hasNext():判断是否有输入

2、hasNextLine():判断是否有输入

3、hasnextBigDecimal():判断输入是否是BigDecimal类型

4、hasnextBigInteger():判断输入是否是BigInteger类型

5、hasnextBoolean():判断输入是否是BigBoolean类型

6、hasnextByte():判断输入是否是Byte类型

7、hasnextDouble():判断输入是否是Double类型

8、hasnextFloat():判断输入是否是Float类型

9、hasnextInt():判断输入是否是Int类型

10、hasnextLong():判断输入是否是Long类型

11、hasnextShort():判断输入是否是Short类型

代码实例3

/* hasNextxxx() */
// hasNext() && hasNextLine()
System.out.println("请输入一个字符串nextLine():");
if (input2.hasNextLine()){
    String str3 = input2.nextLine();
    System.out.println(str3);
}

System.out.println("请输入一个字符串next():");
if (input2.hasNext()){
    String str4 = input.next();
    System.out.println(str4);
}

// hasNextBigDecimal()
System.out.println("请输入一个BigDecimal类型的数字");
BigDecimal bd2;
if (input2.hasNextBigDecimal()){
    bd2 = input.nextBigDecimal();
    System.out.println(bd2);
}

// hasNextBigInteger()
System.out.println("请输入一个BigInteger类型的数字");
BigInteger bi2;
if (input2.hasNextBigInteger()){
    bi2 = input.nextBigInteger();
    System.out.println(bi2);
}

// hasNextBoolean()
System.out.println("请输入一个Boolean类型");
boolean bl2;
if (input2.hasNextBoolean()){
    bl2 = input.nextBoolean();
    System.out.println(bl2);
}

// hasNextByte()
System.out.println("请输入一个Byte类型的数字");
byte by2;
if (input2.hasNextByte()){
    by2 = input.nextByte();
    System.out.println(by2);
}

// hasNextDouble()
System.out.println("请输入一个Double类型的数字");
double db2;
if (input2.hasNextDouble()){
    db2 = input.nextDouble();
    System.out.println(db2);
}

// hasNextFloat()
System.out.println("请输入一个Float类型的数字");
float fl2;
if (input2.hasNextFloat()){
    fl2 = input.nextFloat();
    System.out.println(fl2);
}

// hasNextInt()
System.out.println("请输入一个Int类型的数字");
int i2;
if (input2.hasNextInt()){
    i2 = input.nextInt();
    System.out.println(i2);
}

// hasNextLong()
System.out.println("请输入一个Long类型的数字");
long l2;
if (input2.hasNextLong()){
    l2 = input.nextLong();
    System.out.println(l2);
}

// hasNextShort()
System.out.println("请输入一个Short类型的数字");
short s2;
if (input2.hasNextShort()){
    s2 = input.nextShort();
    System.out.println(s2);
}

三、代码

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;

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

        /* nextxxx() */
        // next() && nextLine()
        System.out.println("请输入一个字符串nextLine():");
        String str1 = input.nextLine();
        System.out.println(str1);

        System.out.println("请输入一个字符串next():");
        String str2 = input.next();
        System.out.println(str2);

        // nextBigDecimal()
        System.out.println("请输入一个BigDecimal类型的数字");
        BigDecimal bd;
        bd = input.nextBigDecimal();
        System.out.println(bd);

        // nextBigInteger()
        System.out.println("请输入一个BigInteger类型的数字");
        BigInteger bi;
        bi = input.nextBigInteger();
        System.out.println(bi);

        // nextBoolean()
        System.out.println("请输入一个Boolean类型");
        boolean bl;
        bl = input.nextBoolean();
        System.out.println(bl);

        // nextByte()
        System.out.println("请输入一个Byte类型的数字");
        byte by;
        by = input.nextByte();
        System.out.println(by);

        // nextDouble()
        System.out.println("请输入一个Double类型的数字");
        double db;
        db = input.nextDouble();
        System.out.println(db);

        // nextFloat()
        System.out.println("请输入一个Float类型的数字");
        float fl;
        fl = input.nextFloat();
        System.out.println(fl);

        // nextInt()
        System.out.println("请输入一个Int类型的数字");
        int i;
        i = input.nextInt();
        System.out.println(i);

        // nextLong()
        System.out.println("请输入一个Long类型的数字");
        long l;
        l = input.nextLong();
        System.out.println(l);

        // nextShort()
        System.out.println("请输入一个Short类型的数字");
        short s;
        s = input.nextShort();
        System.out.println(s);

        Scanner input2 = new Scanner(System.in);

        /* hasNextxxx() */
        // hasNext() && hasNextLine()
        System.out.println("请输入一个字符串nextLine():");
        if (input2.hasNextLine()){
            String str3 = input2.nextLine();
            System.out.println(str3);
        }

        System.out.println("请输入一个字符串next():");
        if (input2.hasNext()){
            String str4 = input.next();
            System.out.println(str4);
        }

        // hasNextBigDecimal()
        System.out.println("请输入一个BigDecimal类型的数字");
        BigDecimal bd2;
        if (input2.hasNextBigDecimal()){
            bd2 = input.nextBigDecimal();
            System.out.println(bd2);
        }

        // hasNextBigInteger()
        System.out.println("请输入一个BigInteger类型的数字");
        BigInteger bi2;
        if (input2.hasNextBigInteger()){
            bi2 = input.nextBigInteger();
            System.out.println(bi2);
        }

        // hasNextBoolean()
        System.out.println("请输入一个Boolean类型");
        boolean bl2;
        if (input2.hasNextBoolean()){
            bl2 = input.nextBoolean();
            System.out.println(bl2);
        }

        // hasNextByte()
        System.out.println("请输入一个Byte类型的数字");
        byte by2;
        if (input2.hasNextByte()){
            by2 = input.nextByte();
            System.out.println(by2);
        }

        // hasNextDouble()
        System.out.println("请输入一个Double类型的数字");
        double db2;
        if (input2.hasNextDouble()){
            db2 = input.nextDouble();
            System.out.println(db2);
        }

        // hasNextFloat()
        System.out.println("请输入一个Float类型的数字");
        float fl2;
        if (input2.hasNextFloat()){
            fl2 = input.nextFloat();
            System.out.println(fl2);
        }

        // hasNextInt()
        System.out.println("请输入一个Int类型的数字");
        int i2;
        if (input2.hasNextInt()){
            i2 = input.nextInt();
            System.out.println(i2);
        }

        // hasNextLong()
        System.out.println("请输入一个Long类型的数字");
        long l2;
        if (input2.hasNextLong()){
            l2 = input.nextLong();
            System.out.println(l2);
        }

        // hasNextShort()
        System.out.println("请输入一个Short类型的数字");
        short s2;
        if (input2.hasNextShort()){
            s2 = input.nextShort();
            System.out.println(s2);
        }
    }
}

你可能感兴趣的:(Java,java)