当前位置: 首页 > 面试题库 >

试用Catch Performance Java

晋安国
2023-03-14
问题内容

捕获异常而不是进行检查(假设消息具有用于查找的HashMap类型性能)时,try-catch需要花费多长时间(以纳秒为单位)?

    try {
        timestamp = message.getLongField( MessageField.TIMESTAMP );
    } catch (MissingDataException e) {
        //Not all messages contain this field
    }

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

问题答案:

总之,检查 的方式 更快。您应该使用支票,因为:

  • 例外是昂贵的!必须创建堆栈跟踪(如果已使用,例如已记录等),并且必须处理特殊的流控制
  • 异常不应用于流控制-异常适用于“异常”
  • 代码的异常方式是“我无法处理这种情况,我正在放弃……您处理!”,但是在这里您 可以 处理…所以处理


 类似资料:
  • 问题内容: 我正在使用 “ go test -v ”运行一堆单元测试。我想用delve调试它们。当我尝试运行调试器时,出现 “无法调试非主程序包” 错误。因此,如何使用delve调试器调试单元测试? 问题答案: 用途: 您还可以通过选择要运行的测试(就像)。 在内部,这与Flimzy的答案相同(它使用编译测试二进制文件),但更加精简,不会留下.test文件供您清理。

  • 我正在创建一个小算法,这是其中的一部分。 如果用户输入非整数值,我想输出一条消息,让用户再次输入一个数字: 我得到了一个永无止境的循环,我不知道为什么。 如果用户输入非整数数字,我如何识别? 如果用户输入非整数数字,我如何要求用户再次输入? 更新 当我打印异常时,我得到了InputMismatchExctive,我应该怎么做?

  • 问题内容: 我正在使用JavaScript测试运行程序“摩卡”。 我的测试失败了,因此我将使用进行调试。 但是运行测试时,没有输出(仅来自Mocha的测试结果)。看来Mocha已捕获并抑制了我的输出! 如何让Mocha显示输出?(对于失败的测试)? 编辑: 抱歉!- 在测试期间可以正常工作!我肯定一直期望它抑制输出,而且我没有正确检查自己的代码。感谢您的回应。所以…话虽如此…也许抑制通过测试的输出

  • 英文原文:http://emberjs.com/guides/testing/testing-user-interaction/ 几乎所有的测试都有访问路由的一种固有模式,就是与页面进行交互(通过助手),然后检测期待的改变是否在DOM中发生。 例如: 1 2 3 4 5 6 test('root lists first page of posts', function(){ visit('/

  • 主要内容:测试套件测试用例是一组条件,测试人员根据这些条件确定软件应用程序是否按照客户的要求工作。测试用例设计包括前提条件,用例名称,输入条件和预期结果。测试用例是第一级操作,源自测试场景。 测试用例提供有关测试策略,测试过程,前提条件和预期输出的详细信息。这些在测试过程中执行,以检查软件应用程序是否正在执行它是否已开发的任务。 编写测试用例是一次性尝试,可以在回归测试时使用。 测试用例通过将缺陷与测试用例ID相关

  • 无论何时,您的Electron应用程序没有按照您设想的方式运行,一组调试工具也许可以帮助您找到代码的错误,性能瓶颈,或者优化的机会。 Application Debugging Whenever your Electron application is not behaving the way you wanted it to, an array of debugging tools might

  • SOFARPC 支持进行框架层面的重试策略,前提是集群模式为 FailOver(SOFARPC 默认即为 FailOver 模式)。重试只有在发生服务端的框架层面异常或者是超时异常才会发起。如果是业务抛出异常,是不会重试的。默认情况下 SOFARPC 不进行任何重试。 请注意:超时异常虽然可以重试,但是需要服务端保证业务的幂等性,否则可能会有风险 XML 方式 如果使用 XML 方式订阅服务,可以

  • 无论何时,您的Electron应用程序没有按照您设想的方式运行,一组调试工具也许可以帮助您找到代码的错误,性能瓶颈,或者优化的机会。 渲染进程 最广泛使用来调试指定渲染进程的工具是Chromium的开发者工具集。 它可以获取到所有的渲染进程,包括BrowserWindow的实例,BrowserView以及WebView。 您可以通过编程的方式在BrowserWindow的webContents中调