【发布时间】:2019-05-11 02:20:57
【问题描述】:
我的问题可能很基本,但我仍然在问这个。我引用了this post,而我在逻辑& 中理解的内容是按位与
0101 & 0011 = 0001
有没有可以在十进制数上应用& 的用例?
例如,如果您考虑逻辑 ^ (XOR) ,则在所有其他元素都出现两次的数组中查找唯一数字很有用。
例如:如果你有一个数组[1,1,2,2,3,3,4,4,6,6,7]
你需要得到 7
int[] x = new int[]{1,1,2,2,3,3,4,4,6,6,7};
int y = x[0];
for (int i = 1; i < x.length; i++) {
y ^= x[i];
}
System.out.println(y);
这段代码会很快给出结果,
同样,在这些用例中是否有任何 & 的用法?
【问题讨论】:
-
很难弄清楚你在这里问什么。您询问十进制数字,但您的示例使用
int(不是double或float)。您链接到 C# 问题而不是 Java 问题。 (它们是不同的语言,语义重叠,但并不相同。)但只是对术语的快速说明:&、|和^不逻辑运算符,除非它们应用于boolean(spec)。当应用于其他类型时,它们是 bitwise 运算符。
标签: java