java Scanner类

绝地灬酷狼 2022-06-13 04:47 299阅读 0赞

之前只知道此类可以用来接收键盘的输入,今天看了李兴华的视频,才知道功能如此之多

先看看System.in

这是一个来自System类中的属性,通过他返回的是一个InputStream,通过这个返回对象的read方法也可以获取从键盘接收的值

  1. package com.cyh.test1;
  2. import java.io.InputStream;
  3. import java.util.Scanner;
  4. public class Demo3{
  5. public static void main(String[] args) throws Exception{
  6. InputStream in = System.in;
  7. byte[] b = new byte[1024];
  8. in.read(b);
  9. System.out.println(new String(b));
  10. }
  11. }

Scanner接收键盘数据

hasNext()系列方法返回布尔值,判断输入的是否满足条件
next()系列函数返回内容

  1. package com.cyh.test1;
  2. import java.io.InputStream;
  3. import java.util.Scanner;
  4. public class Demo3{
  5. public static void main(String[] args) throws Exception{
  6. Scanner scan = new Scanner(System.in);
  7. //有内容的输入
  8. if (scan.hasNext()){
  9. System.out.println(scan.next());
  10. }
  11. //输入的是Double
  12. if (scan.hasNextDouble()){
  13. System.out.println(scan.nextDouble());
  14. }else{
  15. scan.next(); //防止被下面的int读取到,通过next将错误的内容给清空
  16. System.out.println("!Double");
  17. }
  18. //是int
  19. if (scan.hasNextInt()){
  20. System.out.println(scan.nextInt());
  21. }else{
  22. System.out.println("!Int");
  23. }
  24. }
  25. }

读取文件的数据

  1. package com.cyh.test1;
  2. import java.io.*;
  3. import java.util.Scanner;
  4. public class Demo3{
  5. public static void main(String[] args) throws Exception{
  6. File file = new File("c:/aa.txt");
  7. Scanner scan = new Scanner(file);
  8. while (scan.hasNext()){
  9. System.out.println(scan.next());
  10. }
  11. }
  12. }

但是这样默认是以空格和换行条件作为一行数据输出出来的,可以通过
useDelimiter()方法使用规定的字符串进行分割

  1. package com.cyh.test1;
  2. import java.io.*;
  3. import java.util.Scanner;
  4. public class Demo3{
  5. public static void main(String[] args) throws Exception{
  6. File file = new File("c:/aa.txt");
  7. Scanner scan = new Scanner(file);
  8. scan.useDelimiter("\n");
  9. while (scan.hasNext()){
  10. System.out.println(scan.next());
  11. }
  12. }
  13. }

一行一行的读取文件

  1. package com.cyh.test1;
  2. import java.io.*;
  3. import java.util.Scanner;
  4. public class Demo3{
  5. public static void main(String[] args) throws Exception{
  6. File file = new File("c:/aa.txt");
  7. Scanner scan = new Scanner(file);
  8. while (scan.hasNextLine()){
  9. System.out.println(scan.nextLine());
  10. }
  11. }
  12. }

发表评论

表情:
评论列表 (有 0 条评论,299人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java Scanner

    java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。 下面是创建 Scanner 对象的基本语法: > 1.

    相关 java Scanner

    之前只知道此类可以用来接收键盘的输入,今天看了李兴华的视频,才知道功能如此之多 先看看System.in 这是一个来自System类中的属性,通过他返回的是一个Inpu

    相关 java Scanner

    java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。 类的初始化: Scanner object=ne

    相关 Java Scanner

    java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。 下面是创建 Scanner 对象的基本语法: ```ja...