java学习笔记(十):scanner输入

java

可以通过 Scanner 类来获取用户的输入。

通过next()类和nextLine()类来获取字符串。

通过 Scanner 类的 next() 类来获取输入的字符串。

 1 import java.util.Scanner;

2

3 public class Test{

4 public static void main(String[] args){

5 // 从键盘接收数据

6 Scanner scan = new Scanner(System.in);

7 System.out.println("next方式接收:");

8 //在读取前我们一般需要 使用 hasNext 与 hasNextLine 判断是否还有输入的数据

9 if(scan.hasNext()){

10 String str = scan.next();

11 System.out.println("输入的数据为:"+str);

12 }

13 }

14 }

运行输出:

next方式接收:

aaa bbb

输入的数据为:aaa

可以看到 bbb 字符串并未输出。

接下来我们看 通过nextLine()类来获取字符串。

 1 import java.util.Scanner;

2

3 public class Test{

4 public static void main(String[] args){

5 // 从键盘接收数据

6 Scanner scan = new Scanner(System.in);

7 System.out.println("nextLine方式接收:");

8 //在读取前我们一般需要 使用 hasNext 与 hasNextLine 判断是否还有输入的数据

9 if(scan.hasNextLine()){

10 String str = scan.nextLine();

11 System.out.println("输入的数据为:"+str);

12 }

13 }

14 }

运行输出:

nextLine方式接收:

aaa bbb

输入的数据为:aaa bbb

next()和nextLine()的区别

next():

  • 1、一定要读取到有效字符后才可以结束输入。
  • 2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
  • 3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
  • next() 不能得到带有空格的字符串。

nextLine():

  • 1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
  • 2、可以获得空白

通过nextInt()类和nextFloat()类来获取整型和浮点型数据

 1 import java.util.Scanner;

2

3 public class Test{

4 public static void main(String[] args){

5 Scanner scanner = new Scanner(System.in);

6 int i = 0;

7 float f = 0.0f;

8

9 System.out.print("输入整数:");

10 //判断是否还有输入的数据,是否为整形数据

11 if(scanner.hasNextInt()){

12 i = scanner.nextInt();

13 System.out.println(" 输入的数据为:"+ i );

14 }else {

15 System.out.println(" 输入的数据不是整数");

16 }

17

18 System.out.print("输入小数:");

19 //判断是否还有输入的数据,是否为浮点型数据

20 if(scanner.hasNextFloat()){

21 f = scanner.nextFloat();

22 System.out.println("输入的数据为:"+f);

23 }else {

24 System.out.println("输入的数据不是小数");

25 }

26 }

27 }

运行输出:

输入整数:1

输入的数据为:1

输入小数:9.0

输入的数据为:9.0

以上是 java学习笔记(十):scanner输入 的全部内容, 来源链接: utcz.com/z/390947.html

回到顶部