JAVA问题: new Boolean(aval).booleanValue() 和 Boolean.valueOf(aval).booleanValue() 有什么区别,用

我想知道哪个更节约时间和内存资源?

两个效果是一样的,不一样的是new Boolean(a val)是通过构造方法吧值传进去的,Boolean。valueOf(a val)是通过一个普通方法把值传进去的。booleanValue()方法是将此 Boolean 对象的值作为基本布尔值返回。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-26
new Boolean(aval).booleanValue()需要产生Boolean类型实例,然后取它的boolea value,

Boolean.valueOf(aval).booleanValue() , valueOf是基本数据类型boolean对应的封装类Boolean得一个静态方法,返回一个Boolean对象(是Boolean.TRUE或者Boolean.FALSE)。

public static Boolean valueOf(boolean b) {
return (b ? TRUE : FALSE);
}

之间差别在于new Boolean开辟了新的内存空间。从程序开发,内存角度来讲,推荐直接用静态方法(第二种),最起码省内存呢。本回答被提问者和网友采纳
第2个回答  2011-02-21
booleanValue()将此 Boolean 对象的值作为基本布尔值返回。
返回:
此对象的基本 boolean 值。
valueOf
public static Boolean valueOf(boolean b)返回一个表示指定 boolean 值的 Boolean 实例。如果指定的 boolean 值为 true,则此方法返回 Boolean.TRUE;如果为 false,则返回 Boolean.FALSE。如果不需要新的 Boolean 实例,则应优先使用此方法,而不是构造方法 Boolean(boolean),因为此方法有可能大大提高空间和时间性能。
相似回答