Java中的布尔值和布尔值有什么区别?

rou*_*sis 56 java gwt boolean

我想了解Java Booleanboolean类型之间的区别,特别是它们与GWT有关.我知道方法不受支持,但如果可用,我想要更多信息.

rus*_*elf 107

它非常简单,对于GWT和Java也是如此:

  • boolean可以是yes或no
  • Boolean可以是yes,no或NULL.

因此,除非您需要NULL(例如,您从数据库加载字段,并且希望NULL与false不同),然后坚持使用布尔值.


cak*_*rus 34

我不确定GWT因素是否有所不同,但总的来说:

boolean是一种java原始类型,而Boolean是一个包装布尔值的对象/引用类型

像这样的基元和对象之间的转换称为装箱/拆箱.

这是更多信息:

http://javaeye.wordpress.com/2008/06/17/boxing-and-unboxing-conversion/

你问为什么打包?

http://java.sun.com/j2se/1.5.0/docs/guide/language/autoboxing.html

http://www.javapractices.com/topic/TopicAction.do?Id=197


Mic*_*ers 10

在Java中,一个boolean是文字truefalse,而Boolean为一个对象包装boolean.

除非在需要对象引用的情况下,例如在a中,否则很少有理由使用Booleanover booleana List.

Boolean还包含静态方法parseBoolean(String s),您可能已经知道了.


Mic*_*sey 6

因为Boolean可以为null,所以它可以用于延迟加载.

if(hasRoots == null){
   calculateRoots();
}
Run Code Online (Sandbox Code Playgroud)


All*_*nde 5

Java具有原始类型(int,boolean,float等),并且只要您希望将它们用作对象的实例,它们就会被包含在关联的类类型中.例如,布尔值被Booleans包装,int作为Integer等.

它也有它的好处.boolean没有辅助方法(因为它不是类),但布尔方法没有.因此,如果您想将字符串转换为布尔值,可以尝试使用Boolean.valueOf("true").

希望有所帮助.