标题:[求助]try{}catch{}语句实现循环时的问题,高手帮忙看看。
取消只看楼主
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
 问题点数:0 回复次数:7 
[求助]try{}catch{}语句实现循环时的问题,高手帮忙看看。
怎么实现输入一个字符,要求是int型,如果不是则重新输入,直到输入正确;
小弟初学JAVA,高手看下下面的程序:
import javax.swing.JOptionPane;
class A
{
public static void main(String[] args)
{String s=JOptionPane.showInputDialog("输入一个数");
int m=0,n=0;
while(n==0)
{try
{
m=Integer.parseInt(s);
n=1;
}
catch (Exception e)
{
System.out.println("please input a integer");
}
}
System.out.println(m);
}
}
但是这样行不通,会一直执行catch里面的语句,成了一个死循环。是不是因为异常类对象还没有被释放的缘故?但JAVA并不提供手动释放对象。。。对于try语句是在出现异常的时候catch才捕捉异常类的对象还是不管是否有发生异常,只要有相应异常类对象存在就转入catch语句?高手回答下,有什么错误请指正,有错才会有进步。。

[此贴子已经被作者于2007-10-23 12:14:49编辑过]

搜索更多相关主题的帖子: catch try 语句 
2007-10-22 13:11
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 

这个不是我自定义的异常类,是包里自带的。。

2007-10-22 13:54
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 

顶一个,期待有人解答。。

2007-10-22 20:09
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 
顶,还没人回答。。
2007-10-23 04:06
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 
没人解决。。看来要改标题了
2007-10-23 12:13
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 

感谢以上的回答,问题未解决,持续观望中。

2007-10-23 20:24
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 
以下是引用Gramary在2007-10-23 12:45:28的发言:
while(true)
{
try
{
m=Integer.parseInt(s);
break;
}
catch (Exception e)
{
System.out.println("please input a integer");
}


}
System.out.println(m);
写成这样就可以了

这样照道理本来是可以,不过由于对象没释放,一直在执行catch语句,break当然就没有用了啊。。

2007-10-24 01:32
hanssion
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-1
得分:0 

2007-10-25 01:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-179758-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.284285 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved