【一目でわかるJava】変数の宣言と使い方

こんにちは!フリーランスの長野です。

プログラムを書き始めてよく使うのが変数ですよね。

数字や文字列を格納する変数にそれぞれ名前を付けて、その変数名を使って処理を記述します。

その変数名に代入する値を必要に応じて変えることで処理結果が変わってきますよね。

この記事では、変数について

・変数とは
・データ型一覧
・変数を宣言する方法

という基本的な内容から、

・変数の初期化
・変数に値を代入する方法

など具体的な使い方についても解説していきます。

今回は変数について、使い方をわかりやすく解説します!

なお、Javaの記事については、こちらにまとめています。

目次

変数とは

変数とはデータを格納しておく領域のことです。

変数はメモリ上に確保され、値を代入したり参照したりすることができます。

それぞれの領域を区別するために変数名を付けて宣言します

データ型一覧

データ型とは、数字や文字などのデータをメモリ上に確保する領域やバイト長、確保した領域の扱い方などを指定するものです。

変数を宣言するときに、データ型を指定する必要があります。

データ型について表にまとめました。

数値を扱うデータ型:

データ型の種類名称消費メモリ範囲
byteバイト型1バイト-128~127
short短整数型2バイト-32768~32767
int整数型4バイト-2147483648~
2147483647
long長整数型8バイト-9223372036854775808~
9223372036854775807
float単精度浮動小数点数型4バイト±3.40282347E+38~
±1.40239846E-45
double倍精度浮動小数点数型8バイト±1.79769313486231570E+308~
±4.94065645841246544E-324

その他のデータ型:

データ型の種類名称消費メモリ説明
char文字型2バイト¥u0000~¥uFFFF
String文字列型4バイト
(64ビットJVMでは8バイト)
参照型
booleanブーリアン型1バイトtrue(真)かfalse(偽)か

変数を宣言する方法

変数を宣言する方法について説明します。

下記のように変数に付ける変数名の前にデータ型を指定します。

データ型名 変数名;

変数の宣言例:

int i;
double d;
String str;

変数の初期化

Javaの場合、メソッド内などで使用するローカル変数の場合、宣言しただけでは初期化されません

初期化されていない変数を使用するとコンパイルエラーとなるので、注意しましょう。

初期化は次のようにして記述します。

変数名 = 値;

また次のように宣言と初期化を一緒に記述することもできます。

データ型名 変数名 = 値;

なおクラス変数インスタンス変数の場合、データ型を指定して宣言すると初期値が与えられます

その場合の初期値についてまとめました。

整数値系のデータ型:0(ゼロ)
float型:0.0f
double型:0.0d
文字型:’\u0000′
boolean型:false
参照型(String):null

ちなみにクラス変数とは、クラスをインスタンス化せずに使用できる変数のことです。

インスタンス変数
とは、クラスをインスタンス化して使用する変数のことです。

クラス変数、インスタンス変数についてもっと詳しく知りたい方は、こちらを参考にしてくださいね!

変数に値を代入する方法

変数に値を代入する方法について説明します。

値を代入するには「=」記号を使用します。

初期化と同じように変数名の後に「=」記号を続けて記入し、その後に代入する値を記述します。

変数名 = 値;

それではサンプルコードで確認してみましょう。

public class Main {
 
    public static void main(String[] args) {
        String str = "Hello"; // String型
        int i = 1; // int型
        float f = 1e-1f; // 1×10^-1 float型
        double d = 1.0; // double型
        boolean b = true; // boolean型
 
        System.out.println("変数str は " + str + " です");
        System.out.println("変数i は " + i + " です");
        System.out.println("変数f は " + f + " です");
        System.out.println("変数d は " + d + " です");
        System.out.println("変数b は " + b + " です");
    }
 
}

実行結果:

変数str は Hello です
変数i は 1 です
変数f は 0.1 です
変数d は 1.0 です
変数b は true です

このサンプルコードでは、まずString型の変数「str」に”Hello”という文字列を代入しています。

次にint型の変数「i」に整数値の1を代入しています。

float型の変数「f」に小数値の1e-1fを代入しています。

1e-1fとは1×10のマイナス1乗すなわち0.1のことです。

浮動小数点のリテラルには指数を表す「e」(もしくは「E」)を使用します。

なおfloat型に値を代入する場合は数値の後に「f」(もしくは「F」)を付けてfloat型であることを明示します。

double型の変数「d」に小数値の1.0を代入しています。

boolean型の変数「b」にtrueを代入しています。

またSystem.out.printlnメソッドを使用して、それぞれの文字列と変数の値を表示しています。

まとめ

ここでは、変数を宣言する方法や変数に値を代入する方法について説明しました。

変数を使って処理を記述しておけば、後は代入する値を変更するだけで異なる結果を出力することができて便利です。

使いこなすことができるように、この記事を何度も参考にして下さいね!

この記事を書いた人

熊本在住のフリープログラマ兼ライターです。C/C++/C#、Java、Python、HTML/CSS、PHPを使ってプログラミングをしています。専門は画像処理で最近は機械学習、ディープラーニングにはまっています。幅広くやってきた経験を活かしてポイントをわかりやすくお伝えしようと思います。
お問合せはこちらでも受け付けています。
info@sss-lab.com

目次