ゆるゆるプログラミング

・16進数の代入

16進法とは、0~9、A~Fの10個の数字と6個のアルファベットを使って数を表すものです。10~15が、A~Fに対応します。一般的に使われている10進法は9の次に繰り上がるのに対して、16進法はF(15)の次に繰り上がります。下の表に10進数と16進数の対応をまとめたので参考にしてください。8進数の"F"(15)の次が"10"になっていることがわかります。

10進数 16進数
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
16 10

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

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

Integer.parseIntメソッド

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

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

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

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

Hexadecimal.java
001:    public class Hexadecimal {
002:    	public static void main(String[] args) {
003:    		// 16進数 「10」
004:    		int hex1 = 0x10;
005:    		// 16進数 「2」
006:    		int hex2 = 0x2;
007:    		// 16進数 「A」
008:    		int hex3 = 0xA;
009:    		// 16進数 「FF」
010:    		int hex4 = 0xFF;
011:    		// 16進数 「-FE」
012:    		int hex5 = Integer.parseInt( "-FE", 16 );
013:    
014:    		// 結果の表示
015:    		System.out.println( hex1 );
016:    		System.out.println( hex2 );
017:    		System.out.println( hex3 );
018:    		System.out.println( hex4 );
019:    		System.out.println( hex5 );
020:    	}
021:    }

Hexadecimal.javaの出力結果

16
2
10
255
-254

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

■関連コンテンツ

変数について Javaで扱う変数について解説
2進数 2進数について
10進数→2進数変換 10進数→2進数変換について
8進数の代入 8進数の代入方法について

■新着情報

2017.11.17 N値化 カラー画像をN値化する方法について解説
2017.11.16 最も近い値の取得 指定値に最も近い配列の値を取得する方法を解説
2017.10.02 アルファ値(透過) アルファ値(透過)について

■広告

法人向けのETC専用カード

~約8,000名の受講生と80社以上の導入実績~ 企業向けプログラミング研修ならCodeCamp

日本最大級ショッピングサイト!お買い物なら楽天市場

Topへ