Javascript和Java中逻辑单与&、双与&&的区别

1.相同之处:在Java和javascript中运算结果一致
但&&具有短路效果。当左边是flase时,右边不再执行。
(同理双或||。左边是true时,右边不执行。)

  • 逻辑与:&—— 有false则false
    逻辑或:| —— 有true则true
class Test{
    public static void main(String[] args){
        int x=7, y=8;
        //boolean b=((x++ == 7) & (y++ == 8));       //8 9 true
        //boolean b=((x++ == 7) && (y++ == 8));      //8 9 true
        //boolean b=((++x == 7) & (y++ == 8));           //8 9 flase
        boolean b=((++x == 7) && (y++ == 8));            //8 8 flase  
        //注意的是:后面的y为8! &&前执行完为flase,之后直接就不执行了,得出flase

        System.out.println("x:"+x+" y:"+y+"  "+b);

    }

摘自:https://blog.csdn.net/u013317445/article/details/81531560

2.不同之处:

  • 在javascript中true&true的结果是1,false&true的结果是0
    在java中true&true的结果是true,false&true的结果是false
    但是不影响在if语句中的使用。
<script type="text/javascript">
			/*声明变量:算术运算*/
				/*var a="123a";
				var b=2;
				alert(a+b);
				var c=true
				var d="1"
				alert(c+d);
				alert(a-d);*/
			/*声明变量:逻辑运算*/
				var a=true;
				var b=true;
				alert(a&b);//输出1
				if(a&b){
					alert("成功输出");
				}
				var a=true;
				var b=false;
				alert(a&b);//输出0
				if(a&b){
					alert("成功输出");
				}//该语句不执行
		</script>
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值