Javaをはじめよう!第7回~変数の宣言・初期化・参照~

2015/12/28

はじめに

前回はJavaで使われる専門用語、識別子、基本データ型についてご紹介させて頂きました。

今回から数回に分けて、プログラミングを行う上でもっとも使われるであろう変数と演算子について紹介いたします。
今回は、主に変数の宣言・初期化・参照に焦点を当ててご説明させて頂きます。

変数

変数とは?

変数とは、データを記憶するメモリー上の領域のことです。そして、その領域一つ一つに付ける名前を変数名といいます。その領域にデータを記憶させて使用したい時に変数名で呼び出しデータを取り出します。例えるなら、メモリー上の領域とは箱のようなものであり、その箱に付けられた名前が変数名で、その箱に入っているものがデータと言い換えることができます。

変数名は、自分の好きな名前を付けることができますが、識別子の規則に従わなければならず、予約語を指定する事もできません。

また、変数を宣言する時は、その変数のデータ型を指定します。データはそのデータ型に合ったデータを入れます。データを入れることを代入(プログラム上では、「=」です。)といい代入演算子に含まれますが、それは、次の演算子の項で説明します。今はデータを入れるための処理と考えて下さい。
下は、変数を説明するための例です。(とりあえず、作成してみましょう)

Sample01.java

package chap02;

public class Sample01 {
	public static void main(String[] args){
		int i1 = 123;  //変数i1の宣言、初期化
		int i2 = 456;  //変数i2の宣言、初期化
		System.out.println(i1);
		System.out.println(i2);
	}
}
123
456

int型のiという変数名を持った変数に123を入れてそれをSystem.out.println(i);で使用しています。その結果が123が表示されます。
もう一つのint型のi2も同様の処理をしています。

今のプログラムを視覚的に書くとこのようなイメージになります。

java_07_01

箱一つ一つが、メモリー上に確保されたデータを記憶する領域だと考えて下さい。この確保された領域の場所は毎回自動的に決められるので、プログラマーが意識する必要はありません。

変数の宣言

では、ソースを書きながら一つ一つ理解していきましょう。
最初にデータを入れずにデータの型だけを決めた領域に名前を付ける事を変数の宣言といいます。
以下に変数の宣言の記述の方法を記します。

Sample02.java 変数の宣言の例

package chap02;

public class Sample02 {
	public static void main(String[] args){
       int i; //int型の変数を宣言
		double d; //double型の変数dを宣言
	}      
}

まだ、コードにデータを入れていませんので、コンパイル・実行しても何も出力されません。

変数の初期化と参照

次は、変数の初期化と参照です。

Sample02.java 変数の初期化と参照の例

package chap02;
public class Sample02 {
	public static void main(String[] args){
		int i; //int型の変数を宣言
		double d; //double型の変数dを宣言

		i=123; //変数iを初期化
		d=7.89; //変数dを初期化

		System.out.println(i); //変数iを参照
		System.out.println(d); //変数dを参照
	}      
}

実行例

123
7.89

変数の宣言を行った変数に対してデータを代入することを、変数の初期化といいます。変数は初期化されてはじめて利用することができます。また、System.out.println(i);のようにデータを利用することをデータの参照またはデータの評価といいます。

変数の宣言

java_07_02

変数の初期化

java_07_03

変数の参照

java_07_04

さいごに

今回は、変数ついてご紹介させて頂きました。
次回も変数についてさらに詳しくご紹介いたします。

投稿者情報

パンダマン

パンダマン

パンダマンです。

主にWebシステム開発等を担当しております。
設計・プログラミング。サーバー管理なんでもやります。

今、担当しているプロジェクトではJavaの今まで触れたことのないフレームワークを使うことになり勉強中です。
学生にC言語のプログラミングの基礎を教えたりもしています。
最近「キングダム」にはまっています。

>> パンダマンが執筆した他の記事を読む

法人向け人気レンタルサーバー
法人向け人気専用サーバー
個人向け人気レンタルサーバー