Java中运算符“|”和“||”以及“&”和“&&”区别_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java中运算符“|”和“||”以及“&”和“&&”区别

Java中运算符“|”和“||”以及“&”和“&&”区别

 2018/10/10 18:24:51  ninghq  程序员俱乐部  我要评论(0)
  • 摘要:1.“|”运算符:不论运算符左侧为true还是false,右侧语句都会进行判断,下面代码publicclassTestOperator{privatestaticintj=0;privatestaticBooleanmethodB(intk){j+=k;returntrue;}publicstaticvoidmethodA(inti){booleanb;b=i<10|methodB(4);}publicstaticvoidmain(Stringargs[]){methodA(0)
  • 标签:区别 Java

1.“|”运算符:不论运算符左侧为true还是false,右侧语句都会进行判断,下面代码

?

class="java" name="code">public class TestOperator {
	
	private static int j = 0;
	 
    private static Boolean methodB(int k) {
        j += k;
        return true;
    }
 
    public static void methodA(int i) {
        boolean b;
        b = i < 10 | methodB(4);
 
    }
 
    public static void main(String args[]) {
        methodA(0);
        System.out.println(j);
    }

}

?打印结果:4

?

?

2.“||”运算符:若运算符左边为true,则不再对运算符右侧进行运算,如下代码:

?

public class TestOperator {
	
	private static int j = 0;
	 
    private static Boolean methodB(int k) {
        j += k;
        return true;
    }
 
    public static void methodA(int i) {
        boolean b;
        b = i < 10 | methodB(4);
        b = i < 10 || methodB(8);
 
    }
 
    public static void main(String args[]) {
        methodA(0);
        System.out.println(j);
    }

}

?打印结果:4,说明“||”运算,左边为true后就不会再执行右边,而“|”运算,左边为true后依然会执行右边。

?

?

3.&运算符与|运算符类似:不论运算符左侧为true还是false,右侧语句都会进行判断:

?

public class TestOperator {
	
	private static int j = 0;
	 
    private static Boolean methodB(int k) {
        j += k;
        return true;
    }
 
    public static void methodA(int i) {
        boolean b;
        b = i > 10 & methodB(4);
 
    }
 
    public static void main(String args[]) {
        methodA(0);
        System.out.println(j);
    }

}

?打印结果:4,说明&运算符左侧为false,单依然会运行右侧语句。

?

?

4.“&&”运算符与“||”运算符类似:若运算符左侧为false则不再对右侧语句进行判断:

public class TestOperator {
	
	private static int j = 0;
	 
    private static Boolean methodB(int k) {
        j += k;
        return true;
    }
 
    public static void methodA(int i) {
        boolean b;
        b = i > 10 & methodB(4);
        b = i > 10 && methodB(8);
 
    }
 
    public static void main(String args[]) {
        methodA(0);
        System.out.println(j);
    }

}

?打印结果:4,说明&&运算符左侧为false则不再对右侧语句

上一篇: Java中ArrayList和LinkedList集合 下一篇: 没有下一篇了!
发表评论
用户名: 匿名