有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

将假布尔返回值转换为异常的java习惯用法?

有些Android API(比如File.setWriteable)返回一个表示成功或失败的布尔值,而不是抛出异常。假设周围的代码期望在失败时抛出异常,那么如果返回值为false,那么将此类调用转换为抛出异常(以及哪一个)的好习惯用法是什么

问题的进一步扩展:如果我连续有多个这样的调用(即setWriteablesetReadable)——在抛出异常之前,将它们与&&链接在一起,而不是为每个调用都有一行throw new IOException(),会有什么优点或缺点


共 (1) 个答案

  1. # 1 楼答案

    (在我看来,这是直截了当的,但我怀疑是丑陋的)方式是这样的:

    if (!tmpDir.setWritable(true, false)) {
        throw new IOException();
    }
    

    我问这个问题是因为似乎有更干净或更好的方法