public class Test{ 
   private static int j=0; 
   public static boolean methodB(int k){ 
     j+=k; 
    return true; 
   } 
   public static void methodA(int i){ 
    boolean b; 
    b=i>10&methodB(1); 
    b=i>10&&methodB(2); 
     } 
    public static void main(String args){ 
     methodA(0); 
  17) 
     } 
     } 
j在17行的值是多少,如何执行的!

解决方案 »

  1.   

    j=1
     b=i>10&methodB(1); 这个是算术与,j+=1,j=1
     b=i>10&&methodB(2); 逻辑与,i>10为false,随后后面那个methodB(2)不执行了
      

  2.   

    methodB(2)没有执行是因为从前面i>10已经判断b为false了。
      

  3.   

    谢谢楼上!明白了!那我平时写条件都是这样的
    if(true & true & true),这样的效率应该没有
    if(true && true && true)的高吧,第二个一旦有一个false就跳出,而第一个是不是都要执行啊