Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

Javaでプログラミングを行う際、「++」や「–」といった、プログラムを触ったことが無い方には見慣れない演算子が頻繁に登場します。

本記事では、Javaで利用可能なインクリメント演算子とデクリメント演算子の使い方についてサンプルコードを掲載しながらご紹介していきます。

インクリメント演算子・デクリメント演算子とは


インクリメント演算子は「++」で表現し、対象の値を1つ増やす際に利用します。

反対にデクリメント演算子は「–」で表現し、対象の値を1つ減らす際に利用します。

インクリメント演算子

例えば下記のような加算処理を実施するプログラムがあるとします。

変数「i」の値に「1」を加算して再度変数「i」に格納するだけの簡単な処理です。

i = i + 1

同じ処理をインクリメント演算子を利用して記述すると下記のような形式となります。

i++
ポテパンダの一言メモ

ちなみに「i += 1」でも同じ結果が得られます。

デクリメント演算子

デクリメント演算子は、減算処理を実施する際に利用します。

上記サンプルを減算処理に変更して記述したものが下記です。

i = i - 1

同じ処理をデクリメント演算子を利用して記述すると下記のような形式となります。

i--

インクリメント・デクリメント演算子には前置と後置が存在する


インクリメント演算子とデクリメント演算子の記述には「++」「–」を利用することを説明しましたが、記述する際に「前置」と「後置」2種類の記述方法が可能です。

前置での記述

前置での記述方法というのは「++オペランド」や「–オペランド」の書き方を指します。

オペランドの左側に演算子が記述される方法です。

前置で記述した場合、式の中で加算処理や減算処理が実施された後の値が適用されます。

後置での記述

反対に後置での記述方法は「オペランド++」や「オペランド–」の書き方を指します。

オペランドの右側に演算子が記述される方法です。

後置で記述した場合、前置とは反対に加算処理や減算処理が実施される前の値が適用されます。

具体例

文字での説明だと分かりにくいので実際にサンプルで確認してみましょう。

public class Main {

	public static void main(String[] args) {
		int i;
		int result;

		i = 2;
		result = ++i;
		System.out.println("前置インクリメント= " + result);
		i = 2;
		result = i++;
		System.out.println("後置インクリメント= " + result);
		i = 2;
		result = --i;
		System.out.println("前置デクリメント= " + result);
		i = 2;
		result = i--;
		System.out.println("後置デクリメント= " + result);
	}
}

実行結果が下記です。

前置インクリメント= 3
後置インクリメント= 2
前置デクリメント= 1
後置デクリメント= 2

サンプルの結果で確認出来るように、前置で記述した場合には加算や減算処理が実施された後の値が変数に格納されています。

一方で、後置で記述した場合には加算や減算処理を実施する前の値がそのまま変数に格納されていることを確認出来ます。

インクリメント・デクリメント演算子をサンプルで確認


では実際にインクリメント演算子とデクリメント演算子の処理内容を細かくサンプルコードで確認しておきましょう。

前置のインクリメント演算子

まずは前置のインクリメント演算子の動きを確認します。

public class Main {

	public static void main(String[] args) {
		int i;
		int result1;
		int result2;
		int result3;

		i = 2; // 初期化
		result1 = i;
		result2 = ++i;
		result3 = i;
		System.out.println("result1の結果: " + result1);
		System.out.println("result2の結果: " + result2);
		System.out.println("result3の結果: " + result3);
	}
}

実行結果が下記です。

result1の結果: 2
result2の結果: 3
result3の結果: 3

前置でインクリメント演算子を実行した場合、インクリメント演算子を記述した式の変数に加算された値が格納されています。

後置のインクリメント演算子

次に後置のインクリメント演算子に修正して実行してみます。

public class Main {

	public static void main(String[] args) {
		int i;
		int result1;
		int result2;
		int result3;

		i = 2; // 初期化
		result1 = i;
		result2 = i++;
		result3 = i;
		System.out.println("result1の結果: " + result1);
		System.out.println("result2の結果: " + result2);
		System.out.println("result3の結果: " + result3);
	}
}

実行結果が下記です。

result1の結果: 2
result2の結果: 2
result3の結果: 3

変更したのは11行目だけですが、出力結果が変わっていることをご確認頂けます。

後置のインクリメント演算子を利用する場合、記述した式のタイミングでは変数に加算前の値が格納されており、後述処理から加算された値が適用されていることが確認出来ます。

前置のデクリメント演算子

では同様に前置のデクリメント演算子についても確認していきます。

今回は少し書き方を変えて、変数に代入せずにそのままコンソール出力してみましょう。

public class Main {

	public static void main(String[] args) {
		int i;

		i = 5; // 初期化
		System.out.println("デクリメント演算子使用前: " + i);
		System.out.println("デクリメント演算子使用時: " + --i);
		System.out.println("デクリメント演算子使用後: " + i);
	}
}

実行結果が下記です。

デクリメント演算子使用前: 5
デクリメント演算子使用時: 4
デクリメント演算子使用後: 4

前置の記述では、デクリメント演算子使用時の段階で値が減算されています。

後置のデクリメント演算子

では後置のデクリメント演算子でも同様に記述してみましょう。

public class Main {

	public static void main(String[] args) {
		int i;

		i = 5; // 初期化
		System.out.println("デクリメント演算子使用前: " + i);
		System.out.println("デクリメント演算子使用時: " + i--);
		System.out.println("デクリメント演算子使用後: " + i);
	}
}

実行結果が下記です。

デクリメント演算子使用前: 5
デクリメント演算子使用時: 5
デクリメント演算子使用後: 4

後置の記述では、デクリメント演算子使用時点ではコンソール出力情報が減算されていないことをご確認頂けます。

さいごに: Javaのインクリメント・デクリメント演算子では前置と後置を意識しよう


本記事では、Javaのインクリメント演算子とデクリメント演算子の使い方についてご紹介してきました。

インクリメント・デクリメント演算子の利用方法については簡単ですが、前置と後置により処理のタイミングが異なることを意識しておく必要があります。

作成するプログラムにどちらが適切かを判断して、利用するようにしましょう。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。