ホームページ >Java >&#&はじめる >Java の >> はどういう意味ですか?

Java の >> はどういう意味ですか?

(*-*)浩
(*-*)浩オリジナル
2019-11-14 10:29:374166ブラウズ


Java の >> はどういう意味ですか?

#シフト演算子

シフト演算子のオペランドもバイナリ「ビット」です。これらは、整数型 (主要な型の 1 つ) を処理するために単独で使用できます。 (推奨学習:

java コース )

>> は右シフト演算子で、演算子の左側のオペランドを次の数だけ右に移動します。演算子の右側に指定される数字。

その一般的な形式は次のとおりです。

value >> num

num は、値をシフトするビット数を指定します。

右シフト規則について 1 つだけ覚えておいてください: 符号ビットは変更されず、符号ビットは左側に追加されます。

操作規則:

バイナリ形式による すべての数値は対応する桁数だけ右にシフトされ、下位ビットはシフトアウト (破棄) され、上位ビットは符号ビットで埋められます。つまり、正の数には 0 が埋められます。負の数の場合は 1、これらの型は自動的に int 型に展開されます。

たとえば、削除する値が負の数の場合は、右にシフトするたびに左に 1 が追加され、削除される値が正の数の場合は、右にシフトするたびに左に 0 が追加されます。ビット拡張 (符号ビット保持) (符号拡張) は、右シフト

演算を実行するときに負の数の符号を維持するために使用されます。

計算プロセス

11 >>2 (11 は int 型)

1) 11 の 2 進数形式は次のとおりです: 0000 0000 0000 0000 0000 0000 0000 1011

2) 下位ビットの最後の 2 つの数値を移動します。数値は正の数であるため、上位ビットにゼロが追加されます。

3) 最終結果は 0000 0000 0000 0000 0000 0000 0000 0010 です。

10進数に変換すると3になります。

以上がJava の >> はどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。