您的位置:首页 > 编程语言 > Java开发

Java基础知识强化之IO流笔记62:三种方式实现键盘录入

2015-10-12 17:07 537 查看
1. 三种方式实现键盘录入

System.in 标准输入流。是从键盘获取数据的

键盘录入数据[b]三种方式:[/b]
      A:main方法的args接收参数。
          java HelloWorld hello world java
      B[b]:Scanner(JDK5以后的)[/b]
           Scanner sc = new Scanner(System.in);
           String s = sc.nextLine();
          int x = sc.nextInt()
      C[b]:通过字符缓冲流包装标准输入流实现[/b]
          BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

2. 代码实现:

 package cn.itcast_04;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/*
* System.in 标准输入流。是从键盘获取数据的
*
* 键盘录入数据:
*         A:main方法的args接收参数。
*             java HelloWorld hello world java
*         B:Scanner(JDK5以后的)
*             Scanner sc = new Scanner(System.in);
*             String s = sc.nextLine();
*             int x = sc.nextInt()
*         C:通过字符缓冲流包装标准输入流实现
*             BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
*/
public class SystemInDemo {
public static void main(String[] args) throws IOException {
// //获取标准输入流
// InputStream is = System.in;
// //我要一次获取一行行不行呢?
// //行。
// //怎么实现呢?
// //要想实现,首先你得知道一次读取一行数据的方法是哪个呢?
// //readLine()
// //而这个方法在哪个类中呢?
// //BufferedReader
// //所以,你这次应该创建BufferedReader的对象,但是底层还是的使用标准输入流
// // BufferedReader br = new BufferedReader(is);
// //按照我们的推想,现在应该可以了,但是却报错了
// //原因是:字符缓冲流只能针对字符流操作,而你现在是字节流,所以不能是用?
// //那么,我还就想使用了,请大家给我一个解决方案?
// //把字节流转换为字符流,然后在通过字符缓冲流操作
// InputStreamReader isr = new InputStreamReader(is);
// BufferedReader br= new BufferedReader(isr);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入一个字符串:");
String line = br.readLine();
System.out.println("你输入的字符串是:" + line);

System.out.println("请输入一个整数:");
// int i = Integer.parseInt(br.readLine());
line = br.readLine();
int i = Integer.parseInt(line);
System.out.println("你输入的整数是:" + i);
}
}


运行效果,如下:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: