gpt4 book ai didi

java - 在 Java 中,具有三个 true 输入的 XOR 返回 true。为什么?

转载 作者:搜寻专家 更新时间:2023-10-30 20:55:22 25 4
gpt4 key购买 nike

下面的代码

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

输出:

1 0 0: true
1 0 1: false
1 1 0: false
1 1 1: true
0 0 0: false
0 0 1: true
0 1 0: true
0 1 1: false

当所有三个输入都为 true 时,为什么 XOR 返回 true

如果它是有效的逻辑,我如何实现返回 true 的逻辑 仅当输入元素之一为 true(无论有多少我提供的输入)?

最佳答案

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

关于java - 在 Java 中,具有三个 true 输入的 XOR 返回 true。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6222162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com