天天看點

JAVA—— & 和 &&

& 和 && 都是二進制運算符。(data1 & data2 、data1 && data2)

當data1和data2都是boolean類型的時候,都有邏輯與(and)的作用,但是,當data1為false時, && 不執行 data2。

& 中data1、data2還可以是數字,這時執行按位與運算。&& 中data1和data2不能為數字。

以下是demo:

public class Test
{
	public static void main(String[] args)
	{
		System.out.println("5的二進制是:" + Integer.toBinaryString(5));
		System.out.println("6的二進制是:" + Integer.toBinaryString(6));
		System.out.println("5 & 6結果:" + Integer.toBinaryString((5 & 6)));
		System.out.println("5 & 6結果:" + (5 & 6));
		System.out.println("false & true:" + (false & true));
		System.out.println("true  & true:" + (true & true));

		if (boolean_true() && boolean_false()){}
		if (boolean_false() && boolean_true()){}
	}

	public static boolean boolean_true()
	{
		System.out.println("I am true!");
		return true;
	}

	public static boolean boolean_false()
	{
		System.out.println("I am fasle!");
		return false;
	}
}
           

執行結果:

5的二進制是:101

6的二進制是:110

5 & 6結果:100

5 & 6結果:4

false & true:false

true  & true:true

I am true!

I am fasle!

I am fasle!