逻辑运算符 短路与 & 和 &&

短路与演示

/*
		 * 短路与演示
		 * 当用单个&时,他左右两边都会进行判断  
		 * 当用双  &&时,当从左边表达式就能判断出结果时,则右边的表达式不会进行运算。 
		 */
		
		boolean  flag1=true;
		int   a=-1,b=1;
		flag1=( a++ >0  &&  b++>0 );
		System.out.println("flag1"+flag1+",  a="+a+",b="+b);
		
		
		boolean  flag2=true;
		int   x=-1,y=1;
		flag2=( x++ >0  &  y++>0 );
		System.out.println("flag1"+flag2+",  x="+x+",y="+y);
		/* 结果
		 * flag1false,  a=0,b=1      b++没有进行运算
		 * flag1false,  x=0,y=2      y++被运算
		 */

你可能感兴趣的:(逻辑运算符 短路与 & 和 &&)