1. int 型を詳しく学ぶ
変数に整数を保存したい場合は、型 int を使用します.
int は Integer(英語で「整数」)の略で、この型が整数を格納できることを示しています。
int 型の変数は、約 -20 億から+20 億までの整数を保存できます。正確には、-2,147,483,648 から 2,147,483,647 です。
豆知識
このような半端な値は、コンピュータのメモリの仕組みに由来します。
Java では型 int に 4 バイトのメモリが割り当てられています。1 バイトは 8 ビットで、各ビットは 2 つの値 — 0 または 1 — しか取りません。int 変数は 32 ビットを持ち、4,294,967,296 通りの値を表現できます。
この範囲の半分を負の数、もう半分を正の数に割り当てているため、結果として -2,147,483,648 から 2,147,483,647 になります。
2. int 型の変数の作成
型 int は整数を保持するための型です。整数を保存できる変数をコードで作成するには、次のように書きます:
int imya;
ここで、imya は変数名です。例:
| コマンド | 説明 |
|---|---|
|
整数変数 x が作成されます |
|
整数変数 count が作成されます |
|
整数変数 currentYear が作成されます |
大文字小文字の違いは重要です。int color と int Color は別々の変数を宣言します。
一方、Int Color や INT COLOR といったコマンドはコンパイラには認識されず、エラーになります。int は整数型を表す予約語で、小文字でのみ記述します。
3. 複数変数の省略記法による宣言
プログラムの同じ場所で同じ型の変数をたくさん作成する必要がある場合、次のような省略記法を使えます:
int imya1, imya2, imya3;
例:
| コマンド | 同じ内容の省略記法 |
|---|---|
|
|
|
|
|
|
4. 値の代入
型 int の変数に値を代入するには、次のように書きます:
imya = znachenie;
ここで、値には任意の整数式を指定できます。例:
| コマンド | 注記 |
|---|---|
|
|
|
変数には「20 億」の値が入ります |
|
変数には「マイナス 1,000 万」の値が入ります |
|
コンパイルされません。3,000,000,000 は int の最大値 2,147,483,647 を超えているためです |
5. 宣言と初期化の省略記法
変数の作成(宣言)と値の代入は 1 行で書けます。実務でもその場で値を保存する必要が生じたときに変数を宣言することが多いため、よくこの書き方が使われます。
書式は次のとおりです:
int imya = znachenie;
例:
| コマンド | 注記 |
|---|---|
|
|
|
変数には「20 億」の値が入ります |
|
変数には「マイナス 1,000 万」の値が入ります |
|
コンパイルされません。int の最大値は 2,147,483,647 であり、3,000,000,000 はそれを超えています |
1 行で複数の変数を宣言することもできます。次のように書きます:
int imya1 = znachenie1, imya2 = znachenie2, imya3 = znachenie3;
例:
| コマンド | 注記 |
|---|---|
|
a は 5、b は 10、c は 15 になります |
6. 整数式の評価
代入演算子(等号)= の右側には、数値、変数、+、-、*、/ を組み合わせた任意の式を書くことができます。
括弧 ( ) も使用できます。Java では数学と同様に、まず括弧内の式が評価され、その後に外側が評価されます。乗算と除算は同じ優先順位で、加算と減算よりも優先されます。
例:
| コマンド | 注記 |
|---|---|
|
変数には値 8 が入ります |
|
変数には値 1 が入ります |
|
変数には値 6 が入ります |
|
このコマンドを実行するとエラーが発生し、プログラムは終了します。 |
式には変数も使えます:
int a = 1; // 変数 a には 1 が入る
int b = 2; // 変数 b には 2 が入る
int c = a * b + 2; // 変数 c には 4 が入る
さらに、同じ変数が代入演算子の左側と右側に同時に現れることもあります:
int x = 5; // 変数 x には 5 が入る
x = x + 1; // 変数 x には 6 が入る
x = x + 1; // 変数 x には 7 が入る
x = x + 1; // 変数 x には 8 が入る
x = x + 1; // 変数 x には 9 が入る
x = x + 1; // 変数 x には 10 が入る
つまり、Java では記号 = は「等しい」という意味ではなく、= の左側の変数に、右側の式を評価した結果を代入するための演算子です。
7. 整数の割り算
Java では、整数を整数で割ると結果は常に整数になります。余りは切り捨てられます。言い換えると、小数部分が切り捨てられます。
例:
| コマンド | 割り算の結果 | 注記 |
|---|---|---|
|
2.5 | 変数 a には 2 が入ります |
|
6.6667 | 変数 b には 6 が入ります |
|
-1.2 | 変数 c には -1 が入ります |
|
0.5 | 変数 d には 0 が入ります |
8. 整数の剰余(余り)
加算、減算、乗算、除算に加えて、Java には「剰余(余り)」演算子もあります。記号は % です。これは整数どうしの割り算における余りを求めるもので、小数部分ではありません。
例:
| コマンド | 割り算の結果 | 注記 |
|---|---|---|
|
2 あまり 1 | 変数 a には 1 が入ります |
|
5 あまり 0 | 変数 b には 0 が入ります |
|
1 あまり 4 | 変数 c には 4 が入ります |
|
0 あまり 1 | 変数 d には 1 が入ります |
これは非常に便利で、よく使われる演算子です。たとえば、偶数かどうかを調べるには、その数を 2 で割って、余りを 0 と比較するだけで十分です。余りが 0 なら偶数、1 なら奇数です。
判定は次のように書けます:
(a % 2) == 0
ご想像のとおり、a % 2 は 2 で割った余り(つまり 0 または 1)を求め、== は 0 と比較するために使います。
9. インクリメントとデクリメント
プログラミングでは、変数を 1 増やしたり減らしたりする処理が非常によくあります。Java にはこれらのための専用演算子があります。
インクリメント(1 増やす)演算子は次のとおりです:
a++;
この文は a = a + 1; と同じで、変数 a を 1 増やします。
デクリメント(1 減らす)演算子は次のとおりです:
a--;
この文は a = a - 1; と同じで、変数 a を 1 減らします。
例 1
int x = 5; // 変数 x には 5 が入る
x++; // 変数 x には 6 が入る
x++; // 変数 x には 7 が入る
x++; // 変数 x には 8 が入る
x++; // 変数 x には 9 が入る
x++; // 変数 x には 10 が入る
例 2
int x = 5; // 変数 x には 5 が入る
x--; // 変数 x には 4 が入る
x--; // 変数 x には 3 が入る
x--; // 変数 x には 2 が入る
x--; // 変数 x には 1 が入る
x--; // 変数 x には 0 が入る
x--; // 変数 x には -1 が入る
GO TO FULL VERSION