当前位置: 首页 > 面试题库 >

| =运算符在Java中做什么?

慕嘉茂
2023-03-14
问题内容

在阅读Android通知指南时,我偶然发现了这一点:

增加振动

您可以使用默认振动模式或应用程序定义的振动模式来警告用户。

要使用默认模式,请将“ DEFAULT_VIBRATE”添加到默认字段:

notification.defaults |= Notification.DEFAULT_VIBRATE;

这样做很清楚:它将DEFAULT_VIBRATE标志添加到通知对象的默认标志。但是,|=运算符在Java中做什么?它看起来像一个“
OR”,但是它如何工作?

您可以举一个使用数字的例子吗?

谢谢


问题答案:

|=是按位或分配运算符。它采用LHS的当前值(按位或RHS),并将该值分配回LHS(以+=与加法相似的方式)。

例如:

foo = 32;   // 32 =      0b00100000
bar = 9;    //  9 =      0b00001001
baz = 10;   // 10 =      0b00001010
foo |= bar; // 32 | 9  = 0b00101001 = 41
            // now foo = 41
foo |= baz; // 41 | 10 = 0b00101011 = 43
            // now foo = 43


 类似资料:
  • 问题内容: (插入符)运算符在Java中提供什么功能? 当我尝试这个: …它给我: …所以我猜它不执行幂运算。但是那是什么呢? 问题答案: Java中的运算子 在Java中,“异或”运算符。 让我们举个例子: 这是按位(JLS 15.22.1)和逻辑(JLS 15.22.2)xor的真值表: 更简单地,你也可以将xor视为“ this or that,但不是两者都!”。 Exponentiatio

  • 更新/答案:原来IntelliJ12支持Java 8,后者支持lambda,并且正在“折叠”谓词并将其显示为lambda。下面是“未折叠”代码。

  • 问题内容: 我在这里碰到了这个,总是这样使用: 什么是运营商做的,为什么不使用普通的或? 抱歉,如果以前没有回答,搜索引擎将不喜欢标点符号。 问题答案: http://docs.python.org/reference/expressions.html#notin说: [操作员]和是等效的;为了与C保持一致,是首选。[…]拼写被认为是过时的。

  • 在下面的代码示例中,做什么:

  • 问题内容: 显然,Java中冒号以多种方式使用。有人介意解释它的作用吗? 例如这里: 您将如何以不同的方式编写此循环,以便不合并? 问题答案: 在Java代码中冒号有几个地方: 1)跳出标签): 2)三元条件: 3)每个循环: 4)断言: 5)切换语句中的情况: 6)方法参考