Javaちょこっとリファレンス ブログ

Java開発時にぜひご利用ください。

Java基本

[Java] シフト演算のサンプル

投稿日:2022年10月25日 更新日:

シフト演算のサンプルです。

サンプルソース

例)シフト演算を行う

(結果)
C:\>java ShiftSample 32 64 8 4

シフト演算解説

シフト演算は、まず対象の数値を2進数にして考えます。
そしてその2進数のビットを左右にずらす(シフトする)ことで演算を行います。

上記サンプルを例にしますと、元となる数字16を2進数にすると、
「00010000」(=16)です。

これを1ビット左シフトさせると、全てのビットを左へ1つずつずらすことになるので、
「00100000」(=32)となります。
(ずらすことで1桁目に必要となる部分にはゼロが入ります。)

同じように元の数字を2ビット左シフトさせると、
「01000000」(=64)となります。

今度は元の数字を1ビット右シフトさせると、
「00001000」(=8)となります。
(ずらすことで一番左に必要となる部分にはゼロが入ります。)

結果、桁落ちしない限り
左シフトさせると2倍、4倍、8倍・・・となり、
右シフトさせると1/2倍、1/4倍、1/8倍となりますので、
シフト演算では倍数の計算を簡単に行うことができます。

また、シフト演算はコンピュータが理解しやすい形式の演算なので処理速度が速いことも特徴です。

関連項目

スポンサーリンク

スポンサーリンク

-Java基本
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

[Java] Listの要素をソートする(独自クラス)

Listの要素を独自のルールでソートするサンプルです。 サンプルソース 手順としては、データクラスと ...

[Java例外] java.lang.NullPointerException

以下のように表示されます。 (例外表示) Exception in thread "xxx" jav ...

[Java] Date型からCalendar型にする

Date型からCalendar型にするサンプルです。 サンプルソース 生成したCalendarインス ...

[Java共通部品] 数値カンマ編集

数値をカンマ編集する共通関数です。 サンプルメソッド 例)数値をカンマ編集する共通関数 [crayo ...

[Java] 文字列が空かどうか判定する(.isEmpty())

文字列が空かどうか判定するには、.isEmpty()を使用します。 サンプルソース 例)String ...