2011-12-19 19 views

Trả lời

23

Bitwise OR assignment.

x |= y 

là viết tắt cho:

x = x | y 

(giống như x += y là viết tắt cho x = x + y).

+0

toán tử sai - op hỏi về | = – klochner

+0

Bah, lỗi của tôi, cảm ơn bạn đã sửa. Cập nhật câu trả lời của tôi để phản ánh bitwise hoặc, không hợp lý hoặc. – mynameiscoffey

+5

Bitwise OR cho Fixnum, liên minh khôn ngoan cho Array, ... –

1

Nó được liệt kê trong liên kết bạn đã cung cấp. Đó là một bài tập kết hợp với bitwise OR. Những thông tin này tương đương:

a = a | b 
a |= b 
7

Với Nguyện vọng của ||=&&= có ngữ nghĩa đặc biệt, tất cả các toán tử gán phức hợp được dịch theo quy tắc đơn giản này:

a ω= b 

cũng giống như

a = a ω b 

Như vậy,

a |= b 

tương tự như

a = a | b 
+1

Trong những cách nào 'x || = y' khác với' x = x || y'? – mynameiscoffey

+2

@mynameiscoffey xem http://stackoverflow.com/a/14697343/483520 –

21

Khi làm việc với mảng | = rất hữu ích để thêm vào một mảng duy nhất.

>> x = [1,2,3] 
>> y = [3,4,5] 

>> x |= y 
>> x 
=> [1, 2, 3, 4, 5] 
Các vấn đề liên quan