布尔类型与比较运算

布尔类型,又称为逻辑类型,相应的,布尔运算也称为逻辑运算。

boolean类型

boolean类型只有两种数据,即true值和false值,用来表示“是/否”、“真/假”、“开/关”类的数据,下面的代码演示了boolean类型的应用。

Java
public class Hello {
	public static void main(String[] args) {
		boolean isLocked = true;
		System.out.println(isLocked);
	}
}

执行代码会显示true值。

布尔运算(逻辑运算)

Java中的布尔运算包括:

  • 与运算,使用&&运算符,需要两个运算数,如x && y,当x和y都是true值时,运算结果为true,否则运算结果是false。与运算支持短路功能,如x && y中,当x为false时,不再计算y的值,而是直接返回false值。
  • 或运算,使用||运算符,需要两个运算数,如x || y,当x和y都为true值或有一个为true值,运算结果为true,当x和y都为false值时,运算结果为false。或运算同样支持短路功能,当x为true值时,不再计算y的值,直接返回true值。
  • 取反运算,使用!运算符,只需要一个运算数据,如!x,true值取反得false,false值取反得true值。

下面的代码演示了这三种布尔运算的应用。

Java
public class Hello {
	public static void main(String[] args) {
		boolean x = true;
		boolean y = false;
		System.out.println(x && y);
		System.out.println(x || y);
		System.out.println(!x);
	}
}

代码执行结果如下图。

比较运算

比较运算包括:

  • 等于,使用==运算符。请注意==和=运算符,=运算符是赋值运算符。
  • 不等于,使用!=运算符。
  • 大于,使用>运算符。
  • 大于等于,使用>=运算符。
  • 小于,使用<运算符。
  • 小于等于,使用<=运算符。

比较运算需要两个运算数,其运算结果是boolean类型,表示比较结果是否成立。下面的代码显示了比较运算符的基本应用。

Java
public class Hello {
	public static void main(String[] args) {
		int x = 10;
		int y = 3;
		System.out.printf(" x == y : %b \n", x==y);
		System.out.printf(" x != y : %b \n", x!=y);
		System.out.printf(" x > y : %b \n", x>y);
		System.out.printf(" x >= y : %b \n", x>=y);
		System.out.printf(" x < y : %b \n", x<y);
		System.out.printf(" x <= y : %b \n", x<=y);
	}
}

代码运行结果如下图。

实际应用中,比较运算还可以组合应用,如下面的代码就是判断一个年份是否为闰年。

Java
public class Hello {
	public static void main(String[] args) {
		int year = 2020;
		boolean isLeapYear = 
				(year % 400 == 0) || (year % 100 != 0 && year % 4 == 0);
		System.out.println(isLeapYear);
	}
}

执行代码显示true值,大家可以修改year变量的值来观察执行结果。

本例,在判断闰年时有两个条件,有一个成立即可。一是年份可以被400整除,使用“year % 400 == 0”判断,另一个成立的条件是年份不能被100整除的同时可以被4整除,使用“year % 100 != 0 && year % 4 == 0”判断。

下一课,在讨论代码流程控制时,还会看到布尔运算和比较运算的具体应用。

本站内容均为原创作品,转载请注明出处,本页面网址为:http://caohuayu.com/chy/article/Article.aspx?code=cc001005