微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

尝试Catch Performance Java

捕获异常而不是进行检查时,try-catch需要多长时间(以纳秒为单位)(假设消息具有HashMap类型的查找性能)?
try {
        timestamp = message.getLongField( MessageField.TIMESTAMP );
    } catch (MissingDataException e) {
        //Not all messages contain this field
    }

VS

if (message.contains(MessageField.TIMESTAMP))
    timestamp = message.getLongField( MessageField.TIMESTAMP );

解决方法

简而言之,检查更快.你应该使用支票,因为:

>例外是昂贵的!必须创建堆栈跟踪(如果使用,例如记录等)并处理特殊流量控制>例外情况不应用于流量控制 – 例外情况属于“特殊情况”>例外是代码的说法“我无法处理这种情况,我放弃了……你处理它!”,但在这里你可以处理它…所以处理它

原文地址:https://www.jb51.cc/java/128421.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐