加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java:可以设置Integer = null吗?

发布时间:2020-12-14 05:50:17 所属栏目:Java 来源:网络整理
导读:如果数据库中存在该参数,我有一个返回id号的函数.如果没有,则返回null.这是乞求一个空指针异常吗?不允许使用负号,但是我认为不存在的参数返回null而不是像-1这样的错误代码会更清楚.你怎么看? private Integer tidOfTerm(String name) throws SQLException
如果数据库中存在该参数,我有一个返回id号的函数.如果没有,则返回null.这是乞求一个空指针异常吗?不允许使用负号,但是我认为不存在的参数返回null而不是像-1这样的错误代码会更清楚.你怎么看?
private Integer tidOfTerm(String name) throws SQLException {
    String sql = "SELECT tid FROM term_data WHERE name = ?";
    PreparedStatement prep = conn.prepareStatement(sql);
    prep.setString(1,name);
    ResultSet result = prep.getResultSet();

    if (result.next()) {
        return result.getInt("tid");
    }

    return null; // TODO: is this begging for a null pointer exception?
}

解决方法

这是完全合法的.如果要避免NPE,请抛出一个自定义异常.但不要返回负数.如果调用者不检查返回值,您将总是有问题.但是做错误的计算(因为结果比例乘以-1)绝对比非捕获异常更难调试.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读