2012-06-29 42 views
5

thể trùng lặp:
Difference between >>> and >>
What does “>>>” in java mean?>> và >>> có nghĩa là gì trong Java?

không >>>>> có ý nghĩa gì trong Java?

Tại sao -1 >> 2-1 >>> 2 có kết quả khác?

+0

Quyền dịch chuyển đã ký và chưa ký. –

+3

Tôi nên lưu ý, đây là một câu hỏi hay và ngắn gọn được định dạng hợp lý. Tất cả xung quanh câu hỏi đầu tiên tốt. Thật không may, câu hỏi này đã được hỏi trước, vì vậy tôi đang bỏ phiếu để đóng câu hỏi như là một bản sao. Tôi nghĩ bạn nên đọc [faq] nếu bạn chưa có (hoặc ít nhất là [edit-help] (http://stackoverflow.com/editing-help/) đối với một số mẹo đánh dấu). – zzzzBov

+0

Cảm ơn, tôi sẽ kiểm tra và đọc faq. – duobei

Trả lời

8

>> là toán tử dịch chuyển phải đã ký thay đổi một mẫu bit sang phải. >>> là toán tử thay đổi bên phải chưa được ký thay đổi số không thành vị trí ngoài cùng bên trái. Vui lòng tham khảo the Oracle Docs.

+7

Câu trả lời hay, nhưng hãy cân nhắc trả lời bằng một ví dụ thay vì chỉ trỏ đến một câu trả lời. Cá nhân tôi thích xem ví dụ về cách nhấp vào liên kết để xem một liên kết. – Jon

3

Trong java, có 2 loại thay đổi phù hợp. >>> sẽ đính kèm 0 để điền vào các khoảng trống cho cả số dương và âm (quyền dịch chuyển logic) trong khi >> sẽ đính kèm 1 nếu âm và 0 nếu dương (dấu mở rộng).

Các vấn đề liên quan