这里的属性id 和 age 为何用Integer类型不用int ?

来源:2-3 JDBC实战---搭建模型层 Ⅰ

qq_杀意隆_0

2018-05-04 09:34

这里的属性id 和 age 为何用Integer类型不用int ?

写回答 关注

2回答

  • qq_悲欢喜怒一线牵_0
    2018-05-04 23:30:20
    已采纳

    Integer是包装类,允许赋值为null Integer id = null 而int不可以 可以避免传入的参数万一是null,不会引起空指针异常 希望没有说错,希望对你有帮助

    qq_杀意隆...

    非常感谢!

    2018-05-05 08:40:07

    共 1 条回复 >

  • qq_Takeiteasy_2
    2019-01-11 16:34:48

    避免传进的参数为null,不会引起空指针异常。。。这句话,能否解释下(os:感觉原因说的不对啊),如果是int类型的,在插入的时候不插这个id,id是自增列,自己也会有值。如果是age,age虽不是自增列,插入的时候不插age的值也不会报错,何来空指针异常之说。。空指针异常一般是某个空对象用点运算符会抛出此异常。如果说是用id或者age去调用包装类的方法倒是觉不会用他们的方法,对功能没什么用处,总不能将一个INTEGER类型转换成byte或者string类型。至于为什么要定义成INTEGER类型。你解释的前半句蛮对的,Integer的对象可以赋null,但是int的话若是要赋值的话只能赋某一个数值,若是用0或是其他的数值显得数据库的数据不是很合理,在进行添加女神的时候不想插入数据时插null是在合理不过的了。

JDBC之 “ 对岸的女孩看过来”

一起领略JDBC的奥秘,为进一步学习集成框架打下良好的基础

99324 学习 · 856 问题

查看课程

相似问题