Java的封装类型和原始类型的区别?在JavaWeb程序当中,pojo(javabean)实体类中,是声明为封装类型好还是原始类型好?(比如:int-Integer)
例如:
复制代码
public class User{
private int id;
private Integer id1;
}
int 默认初始化为0;Integer初始化为null;
如果在web前端通过ajax请求到后台的时候,参数传递为 id=&di1=
后台获取参数值时:
id=1
id1=null
然后,保存到数据库时,Integer是不是要拆包为int类型?
请问声明为那种类型更好,更适合程序的处理和性能?
请问各位Java大神分析分析,求指导!
原求助地址:http://bbs.ibeifeng.com/read-htm-tid-65299.html
10 个解决方案
#1
我也没有仔细推敲过
但是觉得有以下几个方面:
1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合
但是觉得有以下几个方面:
1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合
#2
若说性能好,理论上来说当然基本类型的性能更好,但是这个在一般的应用中都是可以忽略不计的。
#3
封装类型数据提供了一些方法,基本数据类型没有
#4
如果值有可能是空 就必须用包装类型
#5
显然原始类型性能更好
#6
一般确实需要考虑,像null很容易引起调用出现空指针的问题,但是封装的类型就有很多可用的方法,所有有时候是需要把两者结合的,可以定义成基本类型,在需要方法时进行转化,也挺好的
#7
声明为基本类型的吧,这样性能会比较好,确实需要用到封装类型的方法的时候转换一下类型就行,这种转换很方便。
int i;
Integer it;
i = 0;
it = new Integer(i); // 对i进行封装
#8
性能肯定是基本变量操作更快一些,但是在java中是以面向对象为中心的,有些操作必须建立在对象上才能有意义!
#9
我们通常的习惯是使用原始类型,不存在性能问题。那么封装类型和原始数据类型有什么区别呢?是因为封装数据类型提供了collections的一些方法
#10
用原始类型快,之所以有wrapper,是因为collection只认对象,不认原始类型变量。
#1
我也没有仔细推敲过
但是觉得有以下几个方面:
1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合
但是觉得有以下几个方面:
1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合
#2
若说性能好,理论上来说当然基本类型的性能更好,但是这个在一般的应用中都是可以忽略不计的。
#3
封装类型数据提供了一些方法,基本数据类型没有
#4
如果值有可能是空 就必须用包装类型
#5
显然原始类型性能更好
#6
一般确实需要考虑,像null很容易引起调用出现空指针的问题,但是封装的类型就有很多可用的方法,所有有时候是需要把两者结合的,可以定义成基本类型,在需要方法时进行转化,也挺好的
#7
声明为基本类型的吧,这样性能会比较好,确实需要用到封装类型的方法的时候转换一下类型就行,这种转换很方便。
int i;
Integer it;
i = 0;
it = new Integer(i); // 对i进行封装
#8
性能肯定是基本变量操作更快一些,但是在java中是以面向对象为中心的,有些操作必须建立在对象上才能有意义!
#9
我们通常的习惯是使用原始类型,不存在性能问题。那么封装类型和原始数据类型有什么区别呢?是因为封装数据类型提供了collections的一些方法
#10
用原始类型快,之所以有wrapper,是因为collection只认对象,不认原始类型变量。