データの型

内部表現

コンピュータ内部では、あらゆる情報は「0」と「1」の組み合わせで表されます。
1個の「0」又は「1」で2通りの情報が表現出来ますが、2個有れば、
00 01 10 11
の4通り(2*2通り)が表現出来ます。
整数は桁(ビット)を増やして行く事で、大きなデータを扱える様になります。
此の様な表現を2進数と言います。
2進数では、桁が大きくなるに連れて人間には解り難くなって終う為、便宜上、下の表の様に4つを1まとまりにした16進数で書き表します。

1個の「0」又は「1」を1ビット(bit」と言います。
此を8個並べた単位を1バイト(byte)と言います。
つまり、「1byte=8bit」です。

2進数 内部表現表

10進数 内部表現 16進数
0 0000 0000 0
1 0000 0001 1
2 0000 0010 2
3 0000 0011 3
4 0000 0100 4
5 0000 0101 5
6 0000 0110 6
7 0000 0111 7
8 0000 1000 8
9 0000 1001 9
10 0000 1010 A
11 0000 1011 B
12 0000 1100 C
13 0000 1101 D
14 0000 1110 E
15 0000 1111 F
16 0001 0000 10
17 0001 0001 11

一方、文字も「0」と「1」の組み合わせで表します。
企画に依り、次のページの表の様に決まっている文字コードで表します。

文字コード表

文字 内部表現 16進数 10進数
'0' 0011 0000 30 48
'1' 0011 0001 31 49
'2' 0011 0010 32 50
'3' 0011 0011 33 51
'4' 0011 0100 34 52
'5' 0011 0101 35 53
'6' 0011 0110 36 54
'7' 0011 0111 37 55
'8' 0011 1000 38 56
'9' 0011 1001 39 57
'A' 0100 0001 41 65
'B' 0100 0010 42 66
'C' 0100 0011 43 67
'D' 0100 0100 44 68
'E' 0100 0101 45 69
'F' 0100 0110 46 70

例えば、内部表現で「0100 0001」が記録されていたとします。
此の数字を文字と判断した場合は、文字コード表から「A」で有る事が解りますが、しかし整数だと判断した場合は、10進数では「65」だと言う事になります。
つまり、同じ内部表現でも其れを数値と見るか、文字と見るかに依って異なる意味になって終うのです。
其の為、予め「此は文字です」「此は整数値です」と言う事を明らかにして措かなければなりません。
此をデータのと言います。

16進数では、1桁で16通りの数値を表しますが、「9」より大きい数字は、数字が足りないので、アルファベットのA〜Fを使います。


Javaで扱う型

Javaでは、全てのデータは「型」に分類して扱います。
下記の表にJavaで扱う「型」をまとめました。

Javaで扱う型

分類 型名 サイズ 説明
文字型 char 16bit 文字
整数型 int 32bit 整数
long 64bit 長い整数
short 16bit 短い整数
浮動小数点型 double 64bit 小数点の付いた実数(高精度)
float 32bit 小数点の付いた実数
論理値型 boolean 8bit 「真」か「偽」の何れか
バイト型 byte 8bit 1byteのデータ

Javaでの実数は「1.5*0.1*0.1」の様に小数点を動かして表現するので、浮動小数点型と呼びます。


リテラル値

書かれた侭の文字を値として扱う直接の値をリテラル値と言います。

リテラル値

リテラル値 解説
char 'A' 1文字を「'」で囲んで表す
Javaでは、全角も半角も同様に扱える
'あ'
int 10 小数点の付かない数字だけで構成
double 10.0 小数点が付くと浮動小数点数に
Boolean true データは此のどちらかのみ
false

文字の拡張表記

通常の「文字」では表現出来ない文字(例えば「'」は、1文字を表す記号として働いて終う為、文字として「'」表せません)を表現する為に、「\」と他の文字を組み合わせて2つで1文字を表します。
此の様な表記を拡張表記(エスケープシーケンス)と言います。
主な物は下の表の通りです。

拡張表記表

拡張表記 意味
\u 以下が「Unicode」の値で有る事を示す
\b バックスペース
\t タブ
\n 改行
\r リターンキー
\" 文字「"」
\' 文字「'」
\\ 文字「\」

戻る