类似(!A&&B)||(A&&!B)||(A&&B) 能不能简化
String A = null, B = null;
boolean isAequalB = (A != null) && (B==null)
|| (A ==null) && (B!=null)
|| (A==null) && (B==null);如上能简化吗

解决方案 »

  1.   

    lanseqingxu 可以 后来我发现 A || B 也可以,真是的
    现在我想知道如果是三个呢? 
    (!A&&B&&!C)||(A&&!B&&!C)||(!A&&!B&&C)||(A&&B&&C)
    就是三个中有且只有一个或者三个都没有
      

  2.   

    我一般都是这样的int count = 0;
    if (A) {count++;}
    if (B) {count++;}
    if (C) {count++;}return count <= 1;
      

  3.   

    因为这种写无论以后扩展到ABC....Z,都无需动太多脑筋
      

  4.   

    呵呵,数理逻辑的基础知识还是很重要的。(!A&&B)||(A&&!B)||(A&&B) = !(!A&&!B) = A||B
      

  5.   

    shine333(enihs)的方法挺不错,学习
      

  6.   

    当然了,楼主最上面的问题,还是向 jFresH_MaN、北极星说的那样