freshman被IOstream搞晕了

oDon 2006-03-12 03:35:19
import java.io.*;
public class IostreamInt{
public static void main(String[] args){
int aIn;
//while(true){
try{
System.out.println("Please input a value :");
aIn = System.in.read();
System.out.println("You entered :"+ aIn);
}

catch(IOException e){
System.out.println("Error reading from user!");
}
// }
}
}
代码如上
输入98 输出 57
去掉注释 结果不堪想象...
求助dx
...全文
90 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oDon 2006-03-12
  • 打赏
  • 举报
回复
所以没有必要背那么多的方法...类...packages?真不知道J2SE学到什么时候才算DX
孤必有邻 2006-03-12
  • 打赏
  • 举报
回复
Java的门槛会越来越高,因为:
1 它的内容(类,方法,包)越来越多;
2 它的思想(模式)越来越丰富和深奥.
lyf040230427 2006-03-12
  • 打赏
  • 举报
回复
有这样用的吗?
import java.io.*;
public class IOStreamInt{
public static void main(String args[]){
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
String number = null;
try{
System.out.println("Please input a number:");
number = input.readLine();
}catch(IOException e){
e.printStackTrace(System.err);
}

//input.close();
System.out.println(""+Integer.valueOf(number));
}
}
InputStream处理的是byte stream
Reader 处理的是character stream
所以要用Reader
调试正确.
oDon 2006-03-12
  • 打赏
  • 举报
回复
菜鸟谢了,发现有一天Java越来越像VB了,无比多的class and method...
wizardblue 2006-03-12
  • 打赏
  • 举报
回复
System.in.read(); 只读一个字符的
你要从system.in读整数的话,要用
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
String temp = br.readLine();

int i = Integer.parseInt(temp);

你那些个98,57是读进来的一个字符的ascii码值

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧