在Java/Android中,| =是什么意思?(按位或分配)

mrd*_*mrd 0 java android bitwise-operators

可能重复:
Java中的快捷方式"or-assignment"(| =)运算符

我在Android SDK文档中找到了以下示例代码:

    boolean retValue = false;
    retValue |= mActionBarHelper.onCreateOptionsMenu(menu);
    retValue |= super.onCreateOptionsMenu(menu);
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我展示相同的代码,以证明这有什么作用?

注意:我假设方法调用返回一个布尔值,所以我想看一个示例,它看起来像if-else结构.

Mar*_*nik 8

| 应用于布尔值只是一个简单的布尔OR.

boolean retValue = false;
retValue = retValue | mActionBarHelper.onCreateOptionsMenu(menu);
retValue = retValue | super.onCreateOptionsMenu(menu);
Run Code Online (Sandbox Code Playgroud)