请哪位老师只点一下下!!!!

产业傻根儿 2005-08-05 10:13:02
public class InputString{
public static void main(String args[]){

String s=inputString("请输入字符串:");
System.out.println("s:"+s);
int s2=inputStringToInt("请输入整数:");
System.out.println("s2:"+(s2+1));

}
/*==============String inputString(String s)=================
fuction: 从屏幕中读字符串获得相应的字符串
Parameters:在输入之前的提示语句
returns: 相应的字符串
author:chenliansheng
time: August 3th 2005
===========================================================*/
public static String inputString(String s){
java.io.InputStreamReader i=new java.io.InputStreamReader(System.in);
java.io.BufferedReader d=new java.io.BufferedReader(i);
System.out.println(s);
String s0="";
try{
s0=d.readLine();
d.close();//d把i也关了,关闭最上层的即可全部关闭
i.close();
}catch(java.io.IOException e){

e.printStackTrace();
}
return(s0);
}

/*==============int inputStringToInt(String s)=================
fuction: 从屏幕中读字符串获得相应的数字
Parameters:在输入之前的提示语句
returns: 相应的整数值
author:chenliansheng
time: August 3th 2005
===========================================================*/

public static int inputStringToInt(String s){
java.io.InputStreamReader ii=new java.io.InputStreamReader(System.in);
java.io.BufferedReader dd=new java.io.BufferedReader(ii);
System.out.println(s);
String s00="";
try{
s00=dd.readLine();
dd.close();//d把i也关了,关闭最上层的即可全部关闭
ii.close();
}catch(java.io.IOException e){
e.printStackTrace();
}
Integer ss=java.lang.Integer.valueOf(s00);
return(ss.intValue());

}

}
//怎么总有异常呢?单个函数使用时是好用的,两个一起用就有问题了,什么原因呀?挠头!!!!!!
...全文
94 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
interhanchi 2005-08-05
  • 打赏
  • 举报
回复
调用第一个时,已经关闭了System.in.在第二个里面又要打开它.就出现异常了!把那个close注释掉就可以了!
simbas00 2005-08-05
  • 打赏
  • 举报
回复
在你调用inputString的代码最后把System.in关闭了,在inputStringToInt中不能再打开System.in,所以出现异常
弘石 2005-08-05
  • 打赏
  • 举报
回复
是不是因为system.in的内容已被读出去了呀?我也不太懂啊

23,404

社区成员

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

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