欢迎访问宙启技术站
智能推送

如何使用Java中的Scanner类及其相关函数进行控制台输入输出操作?

发布时间:2023-05-19 01:28:47

Java中的Scanner类是一个非常有用的输入类,它可以用来从用户的键盘或其他输入源中读取输入数据。

1. 从键盘获取输入

使用Scanner类从键盘获取输入,需要创建一个新的Scanner对象,然后使用nextLine()、nextInt()和nextFloat()等方法从控制台中获取键盘输入。例如:

import java.util.Scanner;

public class ConsoleInput {

   public static void main(String[] args) {

      Scanner input = new Scanner(System.in);

      System.out.print("请输入一个整数: ");

      int num = input.nextInt();

      System.out.println("您输入的整数是: " + num);

   }

}

2. 从文件中获取输入

可以使用Scanner类从文件中读取输入。只需要创建Scanner对象,并将文件对象作为参数传递给Scanner对象的构造函数即可。例如:

import java.io.*;

import java.util.Scanner;

public class ReadFromFile {

   public static void main(String[] args) throws Exception {

      File file = new File("input.txt");

      Scanner input = new Scanner(file);

      while (input.hasNext()) {

         String str = input.nextLine();

         System.out.println(str);

      }

      input.close();

   }

}

此代码将从一个名为input.txt的文件中读取内容,并将其输出到控制台。

3. 格式化输出

可以使用System.out.printf()方法来格式化输出到控制台。使用格式化字符串指定输出的格式并将变量插入到格式化字符串中。例如:

import java.util.Scanner;

public class FormattedOutput {

   public static void main(String[] args) {

      Scanner input = new Scanner(System.in);

      System.out.print("请输入您的名字: ");

      String name = input.nextLine();

      System.out.print("请输入您的年龄: ");

      int age = input.nextInt();

      System.out.printf("您好, %s. 您的年龄是 %d.

", name, age);

   }

}

此代码将从键盘输入姓名和年龄,并使用格式化字符串将它们输出到控制台。

4. 控制台输入输出异常处理

在使用Scanner类进行输入输出操作时,可能会遇到一些异常,例如输入格式错误或文件不存在等。为了正确地处理这些异常,可以使用try-catch语句块来捕获异常并进行处理。例如:

import java.io.*;

import java.util.Scanner;

public class FileWriterExample {

   public static void main(String[] args) {

      try {

         FileWriter fileWriter = new FileWriter("output.txt");

         Scanner input = new Scanner(System.in);

         System.out.print("请输入一个字符串: ");

         String str = input.nextLine();

         fileWriter.write(str);

         System.out.println("数据写入完成!");

         fileWriter.close();

      } catch (Exception ex) {

         System.out.println("出现异常:" + ex.getMessage());

      }

   }

}

此代码将从键盘读取一个字符串,并把它写入到名为output.txt的文件中。如果程序出现异常,将打印异常信息。

总结

Java中的Scanner类可以方便地从控制台、文件或其他输入源中获取输入数据。通过格式化字符串和异常处理,可以实现更加高效和健壮的输入输出操作。