6日でできる 新Java入門|数値と変数(基本データ型)

数値を扱えるようになると、Javaはただの文字列から動く力へ変わる。変数と基本データ型を身につけて、修行の記録を自在に操ろう

Javaのプログラムを書いていると、いつまでも決まった文章だけを表示するわけにはいきません。問題番号、点数、残り時間、身長、平均値、合格か不合格かといったように、状況に応じて変わる値を扱えるようになってはじめて、プログラムらしい動きが見えてきます。ドラゴンボールの世界でたとえるなら、戦士の名前を呼ぶだけではなく、戦闘力、修行回数、気の残量、成功か失敗かといった情報をその場で管理できるようになる感覚です。

そのために必要になるのが 変数 と 基本データ型 です。変数は、値を入れておくための名前付きの入れ物です。そして基本データ型は、その入れ物に どんな種類の値を入れるのか を決めるルールです。整数を入れる箱、小数を入れる箱、1文字を入れる箱、真か偽かを入れる箱、といったように、Javaでは値の種類ごとに箱を使い分けます。

この記事では、変数とは何か、宣言と代入はどう違うのか、どんな基本データ型があるのか、さらに加算、減算、乗算、除算、剰余といった算術演算や、便利な短縮記法まで、順番に丁寧に見ていきます。Lesson04_1.java では変数の基本、Lesson04_2.java では演算、Lesson04_3.java では短縮形を確認しながら、数値を自在に扱うための土台を固めていきます。Javaの修行でいうなら、これは気の量を数え、強さを記録し、修行の成果を計算できるようになる大事な一歩です。

変数とは何か

変数とは、数値や文字などのデータを一時的に格納しておくための 名前付きの箱 です。Javaでは、値をそのまま毎回書くこともできますが、後から値を変えたり、何度も使ったりするなら、変数に入れて扱う方が便利です。

ドラゴンボール風にたとえるなら、変数は 修行データを保存しておく専用ケース のようなものです。たとえば戦闘力を記録するケース、修行回数を記録するケース、合格したかどうかを記録するケース、といった形で使い分けます。ケースに名前が付いているからこそ、あとで必要な情報をすぐ取り出せます。

変数の基本

用語内容
変数データを一時的に格納する名前付きの箱
宣言変数を使うために、型と名前を決めること
代入変数に値を入れること

宣言と代入のイメージ

書き方意味
int score;整数を入れる score という箱を用意する
score = 100;score に 100 を入れる
int score = 100;箱を用意すると同時に 100 を入れる

ここで大切なのは、宣言と代入は別の作業だということです。宣言は 箱を準備すること、代入は その箱に値を入れること です。この違いをはっきり理解しておくと、コードが読みやすくなります。

変数を使った基本的なプログラム

まずは、変数に値を入れて表示する基本的な例を見てみます。

ファイル名:Lesson04_1.java

public class Lesson04_1 {
    public static void main(String[] args) {
        int trainingStage = 3;     // 修行段階
        int powerPoint = 10;       // 上昇した戦闘力
        System.out.println("第" + trainingStage + "段階の修行で戦闘力が " + powerPoint + " 上がりました。");

        trainingStage = 4;
        powerPoint = 20;
        System.out.println("第" + trainingStage + "段階の修行で戦闘力が " + powerPoint + " 上がりました。");
    }
}

実行結果

第3段階の修行で戦闘力が 10 上がりました。
第4段階の修行で戦闘力が 20 上がりました。

このプログラムでは、trainingStage と powerPoint という2つの変数を使っています。最初に 3 と 10 を入れて表示し、そのあとで 4 と 20 に入れ替えてもう一度表示しています。

ここから分かるのは、変数は 一度値を入れたら終わり ではなく、あとから新しい値に変えられるということです。これがとても大切です。プログラムは状況に応じて値が変わるからこそ、動きのある処理を作れます。

基本データ型とは何か

Javaでは、変数を使う前に その変数にどんな種類の値を入れるのか を決める必要があります。その種類を表すのが 基本データ型 です。これをプリミティブ型と呼ぶこともあります。

ドラゴンボール風にいうなら、これは 修行ケースの種類分け です。大きな整数を入れるケース、小数を入れるケース、1文字だけ入れるケース、真か偽かだけを入れるケース、といったように用途ごとに分かれています。どのケースでも何でも入れられるわけではなく、目的に合った箱を選ぶことが大切です。

主な基本データ型

データ型ビット数種類
byte8符号付き整数-128〜127
short16符号付き整数-32768〜32767
int32符号付き整数100, 2500
long64符号付き整数より大きな整数
float32小数3.14f
double64小数3.141592
char16文字'A', '気'
boolean-真偽値true, false

初心者のうちは、まず int、double、char、boolean をよく使います。特に整数は int、小数は double を使う場面が多いです。

型指定の例

int age = 25;
double average = 72.8;
boolean isPassed = true;
char grade = 'B';

このように、型を書くことで、その変数がどんな値を持つのかをJavaに伝えています。型があるおかげで、Javaは値をきちんと管理しやすくなります。

int、double、boolean、char をどう考えるか

基本データ型はたくさんありますが、最初はよく使うものから理解すると分かりやすいです。

よく使う型の考え方

使い道ドラゴンボール風のたとえ
int整数を扱う修行回数、戦闘力、段階数
double小数を扱う気の精密な割合、平均値
booleantrue か false を扱う合格したか、技が成功したか
char1文字を扱うランク記号、戦士区分の記号

たとえば 戦闘力が1500 なら int、平均成功率が 87.5 なら double、修行クリア済みかどうかなら boolean、ランクAなら char、という使い分けになります。

変数の宣言と代入

変数を使うときの流れをもう少し丁寧に見てみます。Javaでは、基本的に次の3パターンがあります。

宣言だけを行う

int energy;

これは energy という名前の整数用の箱を用意しただけです。まだ値は入っていません。

代入を行う

energy = 50;

これは、用意しておいた箱に 50 を入れる操作です。

宣言と同時に代入する

int energy = 50;

これは、箱を用意しながら、同時に 50 を入れる書き方です。実際にはこの形をよく使います。

ドラゴンボール風にいえば、まず 修行用の容器を用意する、それから 気を入れる、または 用意と同時に気を満たす、という違いです。どれも大事ですが、何をしているのかを意識できるとコードの理解が深まります。

算術演算とは何か

変数に値を入れるだけではなく、その値を計算できるようになると、プログラムはぐっと面白くなります。Javaでは、算術演算子を使って、足し算、引き算、掛け算、割り算、余りの計算ができます。

ドラゴンボール風に考えるなら、修行の成果を集計するようなものです。昨日の戦闘力から今日の上昇分を足す、疲労分を引く、倍の重力で修行した成果を掛ける、均等に分ける、余りを確認する、といった感覚です。

算術演算の基本

演算演算子使用例結果
加算+x = 5 + 3;x = 8
減算-x = 5 - 2;x = 3
乗算*x = 4 * 2;x = 8
除算/x = 10 / 3;x = 3
剰余%x = 10 % 3;x = 1

ここで特に大事なのが、整数同士の割り算では 小数部分が切り捨てられる ことです。10 / 3 の結果は 3.333... ではなく 3 になります。これは初心者がよく引っかかるポイントです。

複数の変数と演算を使う例

次は、変数と演算を組み合わせたプログラムを見てみます。

ファイル名:Lesson04_2.java

public class Lesson04_2 {
    public static void main(String[] args) {
        int trainingTime = 12;
        int restTime = 5;

        int add = trainingTime + restTime;
        int sub = trainingTime - restTime;
        int mul = trainingTime * restTime;
        int div = trainingTime / restTime;
        int mod = trainingTime % restTime;

        System.out.println("修行時間 + 休憩時間 = " + add);
        System.out.println("修行時間 - 休憩時間 = " + sub);
        System.out.println("修行時間 * 休憩時間 = " + mul);
        System.out.println("修行時間 / 休憩時間 = " + div);
        System.out.println("修行時間 % 休憩時間 = " + mod);
    }
}

実行結果

修行時間 + 休憩時間 = 17
修行時間 - 休憩時間 = 7
修行時間 * 休憩時間 = 60
修行時間 / 休憩時間 = 2
修行時間 % 休憩時間 = 2

このプログラムでは、trainingTime と restTime という2つの整数を使い、5種類の演算結果をそれぞれ別の変数に入れています。そして、その結果を順番に表示しています。

この例から分かるのは、計算そのものも変数に保存できるということです。途中結果を変数に入れておくと、後で表示したり、さらに別の計算に使ったりしやすくなります。

除算と剰余の違い

加算や減算は分かりやすいですが、初心者が特に混乱しやすいのが / と % です。ここをしっかり整理しておくと、後で条件分岐や繰り返しを学ぶときにも役立ちます。

/ と % の違い

演算子意味結果
/割り算の商12 / 52
%割り算の余り12 % 52

ドラゴンボール風にいうなら、12個の仙豆を5人で均等に分けたとき、1人あたりいくつ配れるかが /、最後にいくつ余るかが % です。役割が違うので、使い分けが大切です。

演算の短縮形

Javaでは、同じ変数に対して 同じ変数を使った計算結果をもう一度代入する 書き方がよくあります。そのため、もっと短く書ける短縮形が用意されています。

たとえば x = x + y; は x += y; と書けます。これはプログラムを短く、すっきり書ける便利な方法です。

短縮形の一覧

書き方同じ意味
x += y;x = x + y;
x -= y;x = x - y;
x *= y;x = x * y;
x /= y;x = x / y;
x %= y;x = x % y;
x++;x = x + 1;
x--;x = x - 1;

ドラゴンボール風にたとえるなら、毎回 気をためてからさらに1だけ増やす と長く言わずに、気をひとつ上げる と短く言えるようになる感覚です。意味は同じでも、書きやすくなります。

短縮形を使うプログラム例

最後に、短縮形を使った例を見てみます。

ファイル名:Lesson04_3.java

public class Lesson04_3 {
    public static void main(String[] args) {
        int trainingPoint = 50;   // 現在の修行ポイント

        trainingPoint += 20;      // 追加の修行で20ポイント上昇
        trainingPoint--;          // 休憩で1ポイント減少

        System.out.println("修行ポイントは " + trainingPoint + " です。");
    }
}

実行結果

修行ポイントは 69 です。

このプログラムでは、最初に 50 の修行ポイントを持っています。そのあと += 20 で 20 増やし、-- で 1 減らしています。結果として 69 になります。

このように短縮形を使うと、同じ変数に対する増減がとても分かりやすく書けます。特に回数カウントやスコア管理ではよく使います。

変数と型の関係を図で整理

ここまでの内容を整理すると、変数は箱であり、基本データ型はその箱の種類を決めるものだと分かります。

下図は、変数が 名前付きの箱 として働き、その箱ごとに int、double、boolean、char などの型が決まっていることを示したものです。箱にはそれぞれ入れられる値の種類があり、整数用の箱には整数、小数用の箱には小数、真偽値用の箱には true または false が入ります。

↓クリックすると拡大表示されます。

この図から分かること

この図を見ると、変数はただの名前ではなく、型によって役割が決まった箱だということが分かります。また、宣言で箱を用意し、代入で値を入れるという流れも整理しやすくなります。整数と小数、真偽値、文字が別々の型として区別される理由もつかみやすくなります。

演算の流れを図で整理

変数に値を入れたあとの計算の流れも、図にすると理解しやすいです。

下図は、2つの変数に入った整数が、加算、減算、乗算、除算、剰余によって計算され、その結果が新しい値として表示される流れを示したものです。また、下部に += や ++ などの短縮記法を用いることで、同じ変数の値を手早く更新する方法も分かります。

↓クリックすると拡大表示されます。

この図から分かること

この図を見ると、変数に入った値が演算子によってどのように計算されるのかが一目で分かります。さらに、+= や ++ のような短縮形が、同じ変数の値を更新するための便利な書き方であることも分かります。

数値と変数を学ぶと、プログラムに動きが出る

画面に決まった文章を出すだけのプログラムと比べて、変数や数値を扱えるようになると、プログラムは一気に動きのあるものになります。状況によって表示内容を変えたり、計算結果を出したり、増減を記録したりできるからです。

ドラゴンボールの修行でも、ただ挨拶するだけではなく、修行回数を数え、戦闘力の変化を追い、成功か失敗かを判断できるようになってはじめて、本格的な成長の記録が始まります。Javaでも同じです。変数と基本データ型を理解することは、これから条件分岐や繰り返し、メソッドやクラスへ進んでいくための、とても大切な土台になります。