我也没有仔细推敲过
但是觉得有以下几个方面:
1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合

解决方案 »

  1.   


    一般确实需要考虑,像null很容易引起调用出现空指针的问题,但是封装的类型就有很多可用的方法,所有有时候是需要把两者结合的,可以定义成基本类型,在需要方法时进行转化,也挺好的
      

  2.   

    声明为基本类型的吧,这样性能会比较好,确实需要用到封装类型的方法的时候转换一下类型就行,这种转换很方便。
    int i;
    Integer it;
    i = 0;
    it =  new Integer(i); // 对i进行封装
      

  3.   

    性能肯定是基本变量操作更快一些,但是在java中是以面向对象为中心的,有些操作必须建立在对象上才能有意义!
      

  4.   

    我们通常的习惯是使用原始类型,不存在性能问题。那么封装类型和原始数据类型有什么区别呢?是因为封装数据类型提供了collections的一些方法
      

  5.   

    用原始类型快,之所以有wrapper,是因为collection只认对象,不认原始类型变量。