java入门之逻辑运算符

java入门之逻辑运算符

1、逻辑运算符的应用,观察程序结果

class  LJYSF{
	public static void main(String[] args) {
		
		//逻辑运算符: | & ^  ||  && !
		//A:逻辑运算符有哪些
		//	&(并且) , |(或者) , !(非) , ^(异或) , &&(短路与) , ||(短路或)
		//逻辑运算符的运算结果是布尔类型

		int a=20;
		int b=10;
		boolean r=a>10&b>20&a<b;
				r=a>b&true;
				r=false&false;
				r=true&false;
				r=false&true;
				r=true&true;
				
				r=a*2-b*3>100|a<100;
				r=true|false;
				r=false|true;
				r=false|false|true;
				r=!true;
		System.out.println("r:"+!r);

		System.out.println("----------------------------------------");
		
		//^ 运算规则 相同为false 不同为true
		boolean bb=true ^ true;
        System.out.println("bb:"+bb);
		          bb=false ^ false;
				
        System.out.println("bb:"+bb);
			      bb=true ^ false;
				
        System.out.println("bb:"+bb);
				bb=false ^ true;
        System.out.println("bb:"+bb);
	}
}


结果:
r:true
----------------------------------------
bb:false
bb:false
bb:true
bb:true

2、& && | || 的区别:在最终运算结果上没有区别,只是在运算效率上有区别

class LJYSF2 {
	public static void main(String[] args) {
			//& 和 && 的区别	
			//boolean r=a>5&++b>=21;  
			// & 他两端的表达式一定都会执行
			// && 当左端为false时 右端就不执行 只有左端为true 右端还是得要去执行
			
			int a=10;
			int b=20;
			boolean r=a>5&&++b>=21; 
	     	System.out.println("r:"+r);
		    System.out.println("b:"+b);

	        //| 和 ||  的区别
			//boolean r1=c>5|++d>=21;   
			// | 他的两端都需执行
			// || 只要左端为true了,右端的表达式,就不执行,只有左端为false了右端还得去执行
			int c=10;
			int d=20;
			boolean r1=c<5||++d>=21;
			System.out.println("r1:"+r1);
			System.out.println("d:"+d);
	}
}


结果:
r:true
b:21
r1:true
d:21

发布了5 篇原创文章 · 获赞 0 · 访问量 41

猜你喜欢

转载自blog.csdn.net/weixin_42401546/article/details/103903255
今日推荐