首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 死循环的话,能抛出异常么? [已结贴,结贴人:jyf7356759]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 09:56:45 楼主
    我想让程序死循环的时候,抛异常,请问有办法么?
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 09:58:091楼 得分:0
    设置循环超过一定的次数以后抛出异常!不知道这样的效果是不是想要的
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 09:58:422楼 得分:0
    呃~``
    可以考虑在循环到一个足够大的次数时,抛出异常.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • anqini
    • 等级:
    发表于:2008-05-09 10:03:343楼 得分:0
    自动会给你抛异常的!StackOverflowError!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:03:554楼 得分:5
    引用楼主 jyf7356759 的帖子:
    我想让程序死循环的时候,抛异常,请问有办法么?


    可以的。可以这么做

    while(true){
      if(....)
        throw new RuntimeException();
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:05:255楼 得分:0
    你如果知道它是死循环为什么不用条件限制呢,不让它死循环不就行了。
    不知道你是在什么地方用的,或许应该有更好的方案
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:16:586楼 得分:0
    能不用异常判断的时候就不要用,异常的开销是比较大的.

    死循环的话完全可以避免,我觉得没必要用循环.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:43:387楼 得分:0
    谢谢大家提议先。
    我的避免不了,因为我的程序是input一个java文件,但是如果这个文件本身就是错的,我就死循环了,我觉得应该要把这种情况考虑进去。
    有这样的代码示例么?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:45:388楼 得分:5
    读取文件的话 你可以设置一个判断啊
    如果读取到的字节长度为0的话 那么就抛异常或者结束这个读取
    如果字节长度不为0  那么就继续读完啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xql80329
    • 等级:
    发表于:2008-05-09 10:45:599楼 得分:0
    学习了 

    循环次数去控制了
    不知道还有别的办法没?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 10:47:3810楼 得分:0
    可以的。

    while(true){
      if(....)
        throw new RuntimeException();
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 11:46:3611楼 得分:0
    1.

    while(true){
      if(抛异条件)
        throw new RuntimeException();
    }

    2.
    如果你一直让循环的话它会抛出:StackOverflowError!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • FL1429
    • 等级:
    发表于:2008-05-09 12:34:5012楼 得分:5
    while(true)
    {
    ..............
    i++;
    if(i==?)
    {
    throw Excecption(" .....");
    }
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 12:38:5713楼 得分:0
    引用 11 楼 bobor_2008 的回复:
    1.

    while(true){ 
      if(抛异条件) 
        throw new RuntimeException(); 
    }

    2.
    如果你一直让循环的话它会抛出:StackOverflowError!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • duzhonghua
    • 等级:
    发表于:2008-05-09 12:41:1114楼 得分:0
    引用 11 楼 bobor_2008 的回复:
    1.

    while(true){ 
      if(抛异条件) 
        throw new RuntimeException(); 
    }

    2.
    如果你一直让循环的话它会抛出:StackOverflowError!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • huxinyu929
    • 等级:
    发表于:2008-05-09 12:55:4515楼 得分:0
    最好是在input处判断
    如果出错:break;
    没有出错:continue;
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • huxinyu929
    • 等级:
    发表于:2008-05-09 12:56:1516楼 得分:0
    不知道你说的 ~~出错是什么~~意思
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 13:29:4017楼 得分:0
    出现死循环的话,肯定是哪里写得不对了,需要进行处理的,并不是让它抛出异常!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 13:33:3718楼 得分:0
    循环次数多了直接跳出,没有必要抛出异常个人认为
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 15:43:5119楼 得分:5
    引用 7 楼 jyf7356759 的回复:
    谢谢大家提议先。
    我的避免不了,因为我的程序是input一个java文件,但是如果这个文件本身就是错的,我就死循环了,我觉得应该要把这种情况考虑进去。
    有这样的代码示例么?

    答:我的程序避免不了死循环。不应该啊。程序设计的时候,对于“这个文件本身就是错的”这样的错误数据的输入,程序设计时,应该有足够的健壮性,而不是:先让它死循环,然后再检测它。我想“真正的程序死循环”,恐怕是不好检测的。“死循环”不一定就抛出“StackOverflowError”。它又不是一个“死递归或无限嵌套的方法调用”,仅仅是一个循环中的代码,不一定就抛出StackOverflowError异常。
    我的建议是:不要这样来设计程序啊。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • huxinyu929
    • 等级:
    发表于:2008-05-09 16:29:2620楼 得分:0
    引用 19 楼 jiangnaisong 的回复:
    引用 7 楼 jyf7356759 的回复:
    谢谢大家提议先。 
    我的避免不了,因为我的程序是input一个java文件,但是如果这个文件本身就是错的,我就死循环了,我觉得应该要把这种情况考虑进去。 
    有这样的代码示例么?

    答:我的程序避免不了死循环。不应该啊。程序设计的时候,对于“这个文件本身就是错的”这样的错误数据的输入,程序设计时,应该有足够的健壮性,而不是:先让它死循环,然后再检测它。我想“真正的程序死循环”…


    有道理~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wbchn
    • 等级:
    发表于:2008-05-09 19:17:0021楼 得分:0
    引用 19 楼 jiangnaisong 的回复:
    引用 7 楼 jyf7356759 的回复:
    谢谢大家提议先。 
    我的避免不了,因为我的程序是input一个java文件,但是如果这个文件本身就是错的,我就死循环了,我觉得应该要把这种情况考虑进去。 
    有这样的代码示例么?

    答:我的程序避免不了死循环。不应该啊。程序设计的时候,对于“这个文件本身就是错的”这样的错误数据的输入,程序设计时,应该有足够的健壮性,而不是:先让它死循环,然后再检测它。我想“真正的程序死循环”…


    说得好,出现死循环只能说明程序不够健壮
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 19:41:4322楼 得分:0
    没有肯定会出现死循环的程序的  如果有 程序本身就有问题。。

    还是修改一下程序实现方式比较好
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 21:25:0423楼 得分:0
    呵呵,看到楼主的贴子,我有个问题了,
    能不能检测程序是否出现了死循环呢?
    感觉好像不能。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 21:37:3524楼 得分:0
    程序健壮!!!!!!支持19楼的 !
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 21:44:4025楼 得分:0
    那就不叫死循环拉
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-09 22:09:5526楼 得分:0
    应该提前判断是否死循环,然后处理,不应该出现死循环才处理,出现死循环肯定耗费资源。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 02:46:4527楼 得分:0
    谢谢大家了!
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved