gpt4 book ai didi

java - 在 java 中对语句使用或 "|"运算符

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:24:12 24 4
gpt4 key购买 nike

假设我有一个数组 a[] ,如果我想更改 a[i] 的值并将其更改为零,我可以通过使用临时变量来实现。

int temp = a[i];
a[i] = 0;

但是我遇到了类似这样的代码

int temp = a[i] | (a[i] = 0);

我很难理解这一点。请解释它有效吗?使用类似类型的代码是一种好习惯吗?

最佳答案

简单代码的目的是从数组中获取一个值并将其在数组中的位置设置为0

让我们看看棘手的代码是如何做到的。

| 运算符是按位或运算符。首先,a[i] 被求值,无论值是多少都是左操作数。接下来,括号强制对 a[i] = 0 求值。这会将数组元素设置为 0| 的右操作数现在为 0。使用值 0 执行按位或运算不会更改其他值。 temp =右边的整个表达式的值就是a[i]的原始值。这具有在一个语句中完成简单代码所做的所有事情的效果。

这段代码很棘手,不是很好的做法,因为它很困惑。我永远不会使用这种技术。

关于java - 在 java 中对语句使用或 "|"运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32149455/

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