实例程序:
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 = 0i <4i++){
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()
}
}
关于JDK1.5 Scanner类的说明
Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.
Scanner reader=new Scanner(System.in)
然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:
next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()
使用nextLine()方法输入行中可能包含空格.如果读取的是一个单词,则可调用.next()方法
3、Scanner和BufferedReader的区别
在命令行模式下要输入数据至程序中时,我们可以使用标准输入串对象System.in.但是,我们并不经常直接使用它,因为System.in提供的 read方法每次只能读取一个字节的数据,而我们平时所应用的通常是读取一个字符串或者是一个数字,所以read方法所以提供的功能,对我们来说并没有太大的用处.
在Java SE 6中,可以使用Scanner类取得用户的输入,Scanner类位于java.util包中,如果你要使用Scanner取得用户输入的话,要加上 import java.util.Scanner这条语句.import的功能是告诉编译器,你将使用java.util包中的Scanner类.
我们来看一个例子:
import java.util.Scanner
public class TestScanner{
public static void main(String[] args){
Scanner scan = new Scanner(System.in)
System.out.println("请输入一个字符串:")
System.out.println("您输入的字符串是:" + scan.next())
采用Scanner类 \x0d\x0a如:Scanner input = new Scanner(System.in)\x0d\x0a int a = input.nextInt()\x0d\x0a这样就实现了数字的输入啊。\x0d\x0a或则是你以字符串的方式输入 再将其转换为数字就可以了啊一般是用scanner用法,你看下这代码,不理解可以问我!import java.util.Scanner
public class TextScanner{
public static void main(String [] args){
//创建Scanner对象 接受从控制台输入
Scanner input = new Scanner(System.in)
System.out.println("请输入名字:")
//接受String型
String name = input.next()
System.out.println("请输入学号")
//接受int型
int id = input.nextInt()//什么类型next后面就接什么 注意大小写
//输出结果
System.out.println("名字为:"+name+"\t学号为:"+id)
}
}