Java言語は,C言語に比べて,非常に多彩な型が存在します(標準で約4,000の型が用意されている). 型がわからなければ,プログラムが読めなくなりますので,C言語のとき以上に型に気をつけてください.

この講義では,とりあえずは,次の型さえ区別できていれば良いです. 講義が進むと,さらに扱う型が増え,最終的に標準で用意されている型では,20 程度の型を使うことになります.

変数の宣言方法

C言語と同じく,型名の後ろに変数名を書いて変数を宣言します. 先にも述べたように,C言語と比べて非常に多彩な型が出てきます. 変数がどんな型であるのかを把握しなければプログラムがわからなくなりますので, 変数の型に気をつけてプログラムを読むようにしましょう.

Integer intValue; // Integer型の変数 intValue を宣言した.
intValue = 10;    // intValue に10を代入した.

// Double型の変数 pi を宣言し,初期値として3.14 を代入した.
Double pi = 3.14;

// String型の変数 name を宣言し,初期値として"Tamada"を代入した.
String name = "Tamada";

// Boolean型の変数 flag を宣言し,初期値として,true を代入した.
Boolean flag = true;

// Character型の変数 character を宣言し,
// 'a' という値を代入した.文字は''で囲む.
Character character = 'a';

代表的な型

  • 整数型
    • Integer 型,(Long型,Short 型,Byte型)
    • ほとんどの場合,Integer型を利用する.
  • 浮動小数点型
    • Double 型,(Float 型)
    • ほとんどの場合,Double型を利用する.
  • 真偽値型
    • Boolean 型(true もしくは false
  • 文字型
    • Character 型.
  • 文字列型
    • String 型.

各型の取りうる値

  • Boolean
    • trueもしくは false のどちらか.
  • Character
    • 16ビット Unicode 文字(\u0000\uffff
  • Byte
    • 8ビット整数(-128127($-2^7$〜$2^7-1$))
  • Short
    • 16ビット整数(-32,76832,767($-2^{15}$〜$2^{15}-1$))
  • Integer
    • 32ビット整数(-2,147,483,6482,147,483,647($-2^{31}$〜$2^{31}-1$))
    • 最大値は,Integer.MAX_VALUE
  • Long
    • 64ビット整数(-9,223,372,036,854,775,8089,223,372,036,854,775,807($-2^{63}$〜$2^{63}-1$))
  • Float
    • 32ビット単精度浮動小数点数
  • Double
    • 64ビット倍精度浮動小数点数

各型の相互変換

String型への変換

次の2通りの方法があります.

  • 実体に対して,toStringメソッドを呼び出す方法.
  • 他のString 型と連結する方法.

処理速度は,toStringメソッドを呼び出す方が早いです. 以下の例も参考にしてください.

Integer intValue = 10;
Double doubleValue = 3.141592;
String string1 = intValue.toString(); // もちろん,"" + intValue でも可.
String string2 = "" + doubleValue;    // doubleValue.toString() でも可.

// 次のような代入方法では,コンパイルエラーが起こる.
String string3 = intValue;  // 型が違う.
String string4 = (String) doubleValue; // 暗黙的な型変換が行えない

String型から各種数値型への変換

必要になった時に改めて説明しますが,次の原則を覚えておくと役に立つでしょう. 数値型(Integer型やDouble型など)にvalueOfというメソッドが定義されています.