In Java XOR with three true inputs returns true. Why?

前端 未结 7 1125
一个人的身影
一个人的身影 2021-02-08 00:42

The following code

System.out.println(\"1 0 0: \" + (true ^ false ^ false));
System.out.println(\"1 0 1: \" + (true ^ false ^ true));
System.out.println(\"1 1 0:         


        
7条回答
  •  萌比男神i
    2021-02-08 01:21

    If you want a true result, if one and only one inputs is true you can use:
    
    (a ^ b ^ c ) ^ ( a && b && c )
    
    the test case result:
    
    true true true = false
    true true false = false
    true false true = false
    true false false = true
    false true true = false
    false true false = true
    false false true = true
    false false false = false
    

提交回复
热议问题