A B*_*A B 27 ruby programming-languages operators
找到表http://phrogz.net/programmingruby/language.html#table_18.4但无法找到描述|=
|=
赋值运算符如何工作?
myn*_*fey 34
按位OR赋值.
x |= y
Run Code Online (Sandbox Code Playgroud)
是简写:
x = x | y
Run Code Online (Sandbox Code Playgroud)
(就像x += y
速记一样x = x + y
).
小智 32
使用数组时| |对于唯一追加到数组非常有用.
>> x = [1,2,3]
>> y = [3,4,5]
>> x |= y
>> x
=> [1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
通过预期||=
和&&=
具有特殊语义,所有复合赋值运算符都根据这个简单的规则进行转换:
a ?= b
Run Code Online (Sandbox Code Playgroud)
是相同的
a = a ? b
Run Code Online (Sandbox Code Playgroud)
从而,
a |= b
Run Code Online (Sandbox Code Playgroud)
是相同的
a = a | b
Run Code Online (Sandbox Code Playgroud)