java获得命令行输入和输出

1.java获得命令行的输出

1 ByteArrayOutputStream bytes=null;
2 System.setOut(new PrintStream(bytes));
3 
4 //重新设置输出到命令行
5 
6 PrintStream console=null;
7 console=System.out;
8 System.setOut(console);

2.java从代码中写入命令行

 1 Byte[] bytes={'1',' ','2',' ','3','\n'};
 2 ByteArrayInputStream input=new ByteArrayInputStream(bytes);
 3 System.setIn(input);
 4 
 5 
 6 //从另一端解析输入
 7 
 8 Scanner in=new Scanner(System.in);
 9 String line=in.nextLine();
10 String [] arrays=in.split(" ");

需要注意的问题:

1.byteArrayInputStream只接受byte数组的类型。

扩展:

byte、char、string之间的区别

1.byte是字节数据类型,是有符号的,占一个字节  -128-127

2.char是字符数据类型,是无符号的,占2个字节。0-65535

3.byte不可以表示中文字符 e.g:’人‘

4.对于字符型 byte和char可以相互转化。

system.out.println();中输出的assii码

byte g = 'b';   //b对应ASCII是98  
char h = (char) g;  
char i = 85;    //U对应ASCII是85  
int j = 'h';    //h对应ASCII是104  
System.out.println(g);  
System.out.println(h);  
System.out.println(i);  
System.out.println(j); 

 

posted @ 2016-05-10 15:48  bounce  阅读(2738)  评论(0编辑  收藏  举报