Java 的 Boolean
类将基本类型 boolean
的值封装进一个对象中。一个 Boolean
类型的对象包含一个类型为 boolean
的字段。
Java 中的 Boolean
类声明
以下是 java.lang.Boolean
类的声明:
public final class Boolean
extends Object
implements Serializable, Comparable<Boolean>
这意味着 Boolean
类是一个不可继承的类(final),它继承自 Object
并实现了 Serializable
和 Comparable
接口。Comparable
接口允许 Boolean
对象能够相互比较。
Boolean
类的字段
以下是 java.lang.Boolean
类的字段:
-
static Boolean FALSE
:这是对应于基本值 false
的 Boolean
对象。
-
static Boolean TRUE
:这是对应于基本值 true
的 Boolean
对象。
-
static Class<Boolean> TYPE
:这是表示基本类型 boolean
的 Class
对象。
Boolean
类的构造器
以下是 Boolean
类的构造器:
-
Boolean(boolean value)
:这会分配一个表示 value
参数的 Boolean
对象。
-
Boolean(String s)
:这会分配一个 Boolean
对象,该对象表示字符串参数为非空并且忽略大小写的情况下等于字符串 "true"
的值。
Boolean
类的方法
以下是 Boolean
类的一些方法:
-
boolean booleanValue()
:返回此 Boolean
对象作为基本类型的 boolean
值。
-
int compareTo(Boolean b)
:此方法比较此 Boolean
实例与另一个。
-
boolean equals(Object obj)
:如果且仅当参数不为空并且是一个 Boolean
对象,表示与此对象相同的布尔值,则返回 true
。
-
static boolean getBoolean(String name)
:如果且仅当由参数命名的系统属性存在并且等于字符串 "true"
时,返回 true
。
-
int hashCode()
:返回此 Boolean
对象的哈希码。
-
static int hashCode(boolean value)
:返回给定布尔值的哈希码。它与 Boolean.hashCode()
兼容。
-
static boolean logicalAnd(boolean a, boolean b)
:返回应用逻辑 AND 运算符到指定布尔操作数的结果。
-
static boolean logicalOr(boolean a, boolean b)
:返回应用逻辑 OR 运算符到指定布尔操作数的结果。
-
static boolean logicalXor(boolean a, boolean b)
:返回应用逻辑 XOR 运算符到指定布尔操作数的结果。
-
static boolean parseBoolean(String s)
:解析字符串参数为布尔值。
-
String toString()
:返回表示此 Boolean
值的 String
对象。
-
static String toString(boolean b)
:返回表示指定布尔值的 String
对象。
-
static Boolean valueOf(boolean b)
:返回表示指定布尔值的 Boolean
实例。
-
static Boolean valueOf(String s)
:返回具有由指定字符串表示的值的 Boolean
。
继承的方法
此类继承自以下类的方法:
Java Boolean
类示例
下面的示例展示了 Boolean
类提供的某些重要方法的用法:
package com.tutorialspoint;
public class BooleanDemo {
public static void main(String[] args) {
Boolean b1, b2;
b1 = Boolean.valueOf(true);
b2 = Boolean.valueOf(false);
int res;
res = b1.compareTo(b2);
String str1 = "Both values are equal ";
String str2 = "Object value is true";
String str3 = "Argument value is true";
if( res == 0 ) {
System.out.println( str1 );
} else if( res > 0 ) {
System.out.println( str2 );
} else if( res < 0 ) {
System.out.println( str3 );
}
}
}
编译并运行上述程序,将会产生以下结果:
Object value is true
这是因为 b1
的值为 true
,而 b2
的值为 false
。当 compareTo
方法被调用时,它会按照自然排序来比较这两个对象。由于 true
在自然排序中位于 false
之前,因此 b1.compareTo(b2)
返回一个正数,表示 b1
大于 b2
。