关于int和Integer在开发中的问题


在java开发中常用的两种数据类型 int  和  Integer,但是他们都有那些区别呢??


1、Integer是int提供的封装类,而int是Java的基本数据类型;


2、Integer默认值是null,而int默认值是0;

3、声明为Integer的变量需要实例化,而声明为int的变量不需要实例化;

4、Integer是对象,用一个引用指向这个对象,而int是基本类型,直接存储数值。


最不容忽视的就是第二条了,在开发中有时候会用int有时候会用Integer,那么问题就来了,有时候我们传值用Integer类型,参数为0,那么这个时候再mybatis中如果设置了数据类型,并进行了非空判断,那么就会默认为空这个时候是不会生效的,执行结束没有报错,并且数据没有任何改变,一点点小事往往会牵扯出大麻烦,浪费很多时间,SO,,,,细节很重要!!!

  还有就是数据表中最好不要用0作为数据类型或者类别什么的等等,


你可能感兴趣的:(MySQL)