本記事は、Javaを一から学んでいく際の学習メモとして書かれています。
主にインプレスから出版されている「スッキリわかるJava入門 第2版 (スッキリシリーズ)」の内容に沿ったかたちで学習していきます。
今回は、Javaの変数と型について学んでいきます。
変数宣言について
Javaでの変数宣言の文は以下のように「型 変数名;」のように記述します。
int data;
そして、以下のように値を代入します。
data = 10;
また、以下のように変数宣言と値の代入を同時に行う初期化も可能です。
int data = 10;
変数名について
変数名については、以下のような命名規則があります。
予約語は使用できない
Javaでは、int
などの名前は予約語(keyword)として扱われているため、変数名にすることはできません。
予約語は約50個あり、具体的には以下のOracleのページから確認することができます。
すでに使われている変数名は使用できない
同じブロック内では、すでに宣言されている変数名は再度同じ変数名で宣言するとコンパイルエラーとなります。
その他の命名規則
一般的な慣習としては、アルファベット小文字で開始し、単語が複数綴られている場合は、myVariable
のようなキャメルケース(camel case)を利用します。
またアルファベット以外でも数字やアンダースコア(_)、ドル記号($)も利用できますが、数字で始まるものや数字のみのものは基本的にNGとなります。
なお、日本語の変数名も可能ですが、他の人でも読めるよう英語で認識しやすいように命名するのが良いです。
型について
JavaはC言語のような型付き言語なので、変数を宣言する際は型を指定しなければいけません。
これらの型(データ型:data type)についてはいくつかの種類があり、以下はよく利用する基本的な型になります。
整数型
整数(integer)を格納するためには、以下の4つの型が利用できます。
型名 | サイズ(byte) | 整数範囲 |
long | 8 | -9223372036854775808~9223372036854775807 |
int | 4 | -2147483648~2147483647 |
short | 2 | -32768~32767 |
byte | 1 | -128~127 |
long型を利用する際は以下のように値の末尾にL
を付ける必要があります。
long data = 10L;
また、C言語ではunsigned
を付けた整数型は符号なし整数として利用できますが、Javaでは符号付き整数しか利用できません。
少数型
浮動小数点数(floating point)を格納するためには、以下の2つの型が利用できます。
型名 | サイズ(byte) | 整数範囲 |
double | 8 | 4.9E-324~1.7976931348623157E308 |
float | 4 | 1.4E-45~3.4028235E38 |
また、float型を利用する際は以下のように値の末尾にF
を付ける必要があります。
float data = 1.01F;
なお、浮動小数点数方式では、厳密な計算ができないことがあり、僅かなレベルで誤差が生じてきます。
double型(倍精度浮動小数点数)はfloat型よりも厳密に計算ができますが、誤差の許されない箇所ではdoubleやfloatは使うことができません。
真偽値型
YesかNoか、のような二者択一の情報を格納するために利用するのがboolean型と呼ばれるもので、以下のように宣言をします。
boolean isDog = true; boolean isCat = false;
文字型
一文字を格納するために利用するのがchar型と呼ばれるもので、以下のように宣言をします。
char c = 'A';
char型の値はシングルクォーテーション(')で囲みます。
文字列型
文字列を格納するために利用するのがString型と呼ばれるもので、以下のように宣言をします。
String str = "Hello, World!";
String型の値はダブルクォーテーション(")で囲みます。
なお、String型は参照型と呼ばれるものになり、これはchar型の配列となります。
定数について
変数を宣言する際に、その変数の値を書き換える必要がない(または書き換えたくない)場合は、定数(constant variable)として以下のように宣言することができます。
final int BUFSIZE = 256;
なお、上記で宣言した定数対して、以下のように値を再代入しようとするとコンパイルエラーとなります。
final int BUFSIZE = 256; BUFSIZE = 1024; // コンパイルエラー
最後に
今回はJavaの変数と型について、基本的なルールについて学びました。
次回は様々な計算を行うために利用する式と演算子について学んでいきます。
参考書籍