Javaプログラミング学習サイト ゆるゆるプログラミング

2017/05/16 公開

・8進数の代入

8進法とは、0~7までの8個の数字を使って数を表すものです。一般的に使われている10進法は9の次に繰り上がるのに対して、8進法は7の次に繰り上がります。下の表に10進数と8進数の対応をまとめたので参考にしてください。8進数の"7"の次が"10"になっていることがわかります。

10進数 8進数
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 10
9 11
10 12

次に、Javaの整数変数8進数を代入する記述の仕方を説明します。ここで説明する内容は、8進数の数の表現をそのままに変数に代入する方法です。

Javaでは、数字の先頭に"0"(半角のゼロ)を付けることで、8進数を表すことができます。Javaで、int a=010と記述するとaに8が代入されます。また、IntegerクラスのparseIntメソッド8進数整数を作ることができます。これは、8進数を表した文字列と、基数に8を与えると整数を得ることができます。

Integer.parseIntメソッド

public static int parseInt( String s, int radix )
■引数に指定された基数をもとにして、文字列の引数を符号付き整数として構文解析します。

  パラメータ s      : 文字列
        radix : 基数

  戻り値     指定された基数での、文字列引数で表される整数

以下が、8進数を表した値を整数型の変数に代入するJavaソースコードの例です。

Octal.java ← クリックしてダウンロードページに移動
001:    public class Octal {
002:    	public static void main(String[] args) {
003:    		// 8進数 「10」
004:    		int octal1 = 010;
005:    		// 8進数 「10」
006:    		int octal2 = Integer.parseInt( "10", 8 );
007:    		// 8進数 「-10」
008:    		int octal3 = Integer.parseInt( "-10", 8 );
009:    
010:    		// 結果の表示
011:    		System.out.println( octal1 );
012:    		System.out.println( octal2 );
013:    		System.out.println( octal3 );
014:    	}
015:    }

Octalの出力結果

8
8
-8

変数に代入された値を表示すると、8進数で与えた数が10進数になっていることがわかります。

■関連コンテンツ

Javaの変数 Javaで扱う変数について解説
2進数 2で繰り上がる数値表現
10進数→2進数変換 10進数表現を2進表現に
16進数の代入 16進数の代入方法について

■新着情報

2021.06.23 配列の初期値 配列の生成直後の値は?
2021.06.18 変数の初期値 変数に値を代入しないで計算

■広告

Topへ