使用InputStream从控制台获取用户输入的数据信息,问题是控制台都显示不出来,怎么解决呢?
代码如下:
package com.java.ch16;import java.io.IOException;
import java.io.InputStream;public class TestInputStream { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InputStream is=System.in;
try {
byte[] bs=new byte[1024];
int len=is.read(bs);
System.out.println(len);
System.out.println("控制台输入的内容:"+new String(bs).trim());
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
代码如下:
package com.java.ch16;import java.io.IOException;
import java.io.InputStream;public class TestInputStream { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InputStream is=System.in;
try {
byte[] bs=new byte[1024];
int len=is.read(bs);
System.out.println(len);
System.out.println("控制台输入的内容:"+new String(bs).trim());
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
import java.util.*;
public class Example{
public static void main(String args[]){
System.out.println("请输入若干个数,每输入一个数用回车确认");
System.out.println("最后输入一个非数字结束输入操作");
Scanner reader=new Scanner(System.in);
double sum=0;
int m=0;
while(reader.hasNextDouble()){
double x=reader.nextDouble();
m=m+1;
sum=sum+x;
}
System.out.printf("%d个数的和为%f\n",m,sum);
System.out.printf("%d个数的平均值是%f\n",m,sum/m);
}
}
输入流对象你可一这样写:
BufferedReader buf = new BufferedReader(InputStream(System.in));
String str = buf.readLine();
System.out.println("控制台语句是:"+str);