一、java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象。常用的类有BufferedReader,Scanner。
相关java视频教程推荐:java
实例程序:视频教程
1、利用 Scanner 实现从键盘读入integer或float 型数据
//import java.io.*;import java.util.*;public class InputTest{public static void main(String[] args){ Scanner in = new Scanner(System.in); //Scanner类 System.out.println("Please input a float number:"); float a = in.nextFloat(); //接收float数据 System.out.println("Please input a string: "); //这里试了一下输入String数据,但中间有空格就不能显示,Scanner类还不具有这功能 Scanner str = new Scanner(System.in); System.out.println("The string is :" + str.next()); System.out.println("The float number is: " + a); for(int i = 0;i < 4;i++){ System.out.println("Please input a int number: "); //for循环接收int型数据 int b = in.nextInt(); System.out.println("The int number is: " + b); }}}
2、利用 BufferedReader实现从键盘读入字符串并写进文件abc.txt中
import java.io.*;public class InputTest{public static void main(String[] args) throws IOException{ BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter buf2 = new BufferedWriter(new FileWriter("abx.txt")); String str = buf.readLine(); while(!str.equals("exit")){ buf2.write(str); buf2.newLine(); str = buf.readLine(); } buf.close(); buf2.close();}}
BufferedReader类位于java.io包中,所以要使用这个类,就要引入java.io这个包:import java.io.BufferedReader.
关于JDK1.5 Scanner类的说明
Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.
Scanner reader=new Scanner(System.in);
然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:
next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()
使用nextLine()方法输入行中可能包含空格.如果读取的是一个单词,则可调用.next()方法