PMD:避免将分支语句用作循环中的最后一个

PMD: Avoid using a branching statement as the last in a loop

我在玩 PMD。它说 "Avoid using a branching statement as the last in a loop.".

    private static MyClass getObj(ResultSet rs) {
    try {
        while (rs.next()) {
            MyClass obj = new MyClass(rs.getString("name"));

            // do other stuff

            return obj;
        }
    } catch (SQLException e) {
        logAndShowException(e);
    }
    return null;
}

你会如何解决这个警告?

我考虑删除 while 循环并只写了一个 if 语句,因为我只需要一个 ResultSet。

谢谢。

循环肯定是没有必要的,反正你马上就退出了。您建议使用 if 语句是好的,您应该继续这样做。您将摆脱 PMD 违规,您的代码将更有意义。

检查 How to get only the first row from a ResultSet 并享受 PMD 的乐趣。