2009-05-17 10:12 java控制台输入输出详解
来源:互联网 发布:大数据发布人的姿势 编辑:程序博客网 时间:2024/05/29 19:21
java控制台输入输出详解
public static void receiveOneChar(){//得到一个输入的字符
char ch='2';
System.out.println("please enter a number:");
try {
ch=(char)System.in.read();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("your entered char is:"+ch);
}
但是该方法只能获得一个输入的字符,为了获得更多的输入字符,或者要实现a,b相加我们该如何实现呢?看下面:
我们知道,java中是以流进行输入输入的,其中System类管理基本输入输出流和错误流,
System.out 将流输出到缺省位置
System.in 获得输入
System.err 输出错误信息
每当main方法被执行时,系统会自动生成上述三各对象;
基本输入流InputStream是个抽象类,它有如下方法供子类继承:
read(); 从流中读入数据;
skip();跳过流中若干各字节;
available();返回流中可用字节数;
mark();在流中标记一个位置;
reset();返回标记的位置;
markSupport();是否支持标记和复位操作;
close();关闭流;
其中,read()方法有三个版本;
int read();读一个整数;
int read(byte[] b);读多个字节到一个字节数组;
int read(byte[] b,int off,int len);从字节数组的某各位置读取len长度的字节;
下面的程序利用int read(byte[] b);实现从控制台读取多个字符;
public static void receiveSomeChar(){//通过字节数组得到输入
byte btArray[]=new byte[128];
System.out.println("please Enter something:");
try {
System.in.read(btArray);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("your entering is:"+new String(btArray));//由字节数组构造String
}
下面通过BufferedReader,InputStreamReader来获得控制台输入;
public static void receiveSomeCharByBufferedReader(){
System.out.println("please Enter something:");
InputStreamReader in=null;
BufferedReader br=null;
in=new InputStreamReader(System.in);//该处的System.in是各InputSream类型的;
br=new BufferedReader(in);
String str="";
try {
str = br.readLine();//从输入流in中读入一行,并将读取的值赋值给字符串变量str
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("your Entered is :"+str);
}
好了,有了上面的基础,我们来实现c语言中常见的输入两个整数,输出两者的和的问题,也就是上面说的a+b的问题;
且看下面的代码:
public static void twoIntAdd(){
int one=0;
int two=0;
String temp=null;
System.out.println("please enter the first integer:");
try {
BufferedReader br1=new BufferedReader(new InputStreamReader(System.in));
temp=br1.readLine();
one=Integer.parseInt(temp);
System.out.println("please enter the second integer:");
BufferedReader br2=new BufferedReader(new InputStreamReader(System.in));
temp=br2.readLine();
two=Integer.parseInt(temp);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(one+"+"+two+"="+(one+two));
}
- 2009-05-17 10:12 java控制台输入输出详解
- java控制台输入输出字符串
- java控制台输入输出字符串
- Java 控制台输入输出
- java控制台的输入输出
- 测试Java控制台输入输出流
- JAVA控制台输入输出员工信息
- JAVA控制台输入输出方法总结
- Java的控制台输入输出语句
- java控制台输入输出的方法
- 控制台输入输出
- 关于Java控制台输入输出乱码问题
- Java开发控制台程序的输入输出
- eclipse通过控制台实现java的输入输出
- Java输入输出流详解
- Java输入输出流详解
- Java输入输出流详解
- java输入输出流详解
- 用 Hadoop 进行分布式并行编程
- 享受寂寞
- 深入浅出设计模式(4)——Prototype模式
- StagefrightPlayer&&AwesomePlayer 初步分析
- TightVNC 源码学习
- 2009-05-17 10:12 java控制台输入输出详解
- java-引用与对象
- php正则表达式笔记
- 山区行
- linux
- LeetCode: Substring with Concatenation of All Words
- 虚拟网络计算 (Virtual NetWork Computing)
- ADB OVER WIFI
- 用JAVA 编写程序从键盘读入10个整数存入整型数组a中