Java开发笔记(二十八)布尔包装类型

2018-11-26 07:56:30来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

前面介绍了数值包装类型,因为不管是整数还是小数,它们的运算操作都是类似的,所以只要学会了Integer的用法,其它数值包装类型即可一并掌握。但是对于布尔类型boolean来说,该类型定义的是“true”和“false”的布尔值,并非123之类的数字,因此还需专门的包装类型Boolean来包装boolean。
Boolean作为包装类型,与数值包装类型相似,它也拥有三种变量初始化方式。由于布尔包装类型的初始化代码雷同数值包装类型,这里不再赘述,具体代码示例如下:

		// 初始化包装变量的第一种方式:直接用等号赋值
		Boolean boolPack = true;
		// 初始化包装变量的第二种方式:调用包装类型的valueOf方法
		//Boolean boolPack = Boolean.valueOf(true);
		// 初始化包装变量的第三种方式:使用关键字new创建新变量
		//Boolean boolPack = new Boolean(true);
		System.out.println("boolPack="+boolPack);

 

要把布尔包装变量转换成基本类型的布尔变量,同样不能通过强制类型转换,而是必须调用包装变量的booleanValue方法,如此方能得到布尔类型的变量值。与数值包装类型保持一致的还有equals方法,该方法相当于关系运算符“==”,可用于判断两个布尔包装变量是否相等。booleanValue方法和equals方法的调用代码例子见下:

		// 把包装变量转换成布尔变量,需要调用包装变量的booleanValue方法
		boolean bool = boolPack.booleanValue();
		System.out.println("bool="+bool);
		// 布尔包装变量的equals方法相当于关系运算符“==”
		boolean equalResult = boolPack.equals(false);
		System.out.println("equalResult="+equalResult);

 

除此之外,布尔包装变量之间允许使用逻辑运算符,包括非运算符“!”、与运算符“&”、或运算符“|”、异或运算符“^”。当然,这些逻辑运算符早就用于基本布尔类型,倘若包装布尔类型只有这点本事,不免拾人牙慧。所以包装类型另外提供了几个逻辑方法,像是logicalAnd方法相当于逻辑“与”运算符“&&”,logicalAnd方法相当于逻辑“或”运算符“||”,logicalAnd方法相当于逻辑“异或”运算符“^”。通过方法包装了常见的逻辑运算操作,这样Java代码才更像是常人看得懂的编程语言,而非只有数学家才能看得懂的逻辑式子。下面是布尔包装类型使用几个逻辑方法的代码例子:

		boolean a = true, b = false;
		// 布尔包装类型的logicalAnd方法相当于逻辑“与”运算符“&&”
		boolean andResult = Boolean.logicalAnd(a, b);
		System.out.println("andResult="+andResult);
		// 布尔包装类型的logicalAnd方法相当于逻辑“或”运算符“||”
		boolean orResult = Boolean.logicalOr(a, b);
		System.out.println("orResult="+orResult);
		// 布尔包装类型的logicalAnd方法相当于逻辑“异或”运算符“^”
		boolean xorResult = Boolean.logicalXor(a, b);
		System.out.println("xorResult="+xorResult);

  
更多Java技术文章参见《Java开发笔记(序)章节目录》

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java代码解决ElasticSearch的Result window is too large问题

下一篇:并发编程(二)—— CountDownLatch、CyclicBarrier和Semaphore