for文

for文は、初期値から条件式に一致するまで繰り返す処理(ループ)を行いたい場合に使用します。

基本的な構文としては、以下の形式で記述します。

for (初期化; 条件式; 変化式){
}

 

仕事でよく利用されているfor文(1)から(4)のパターンをご紹介します。

for文は以下のパターンに限らず、その他にも様々なパターンがありますが、以下のパターンは覚えておいたほうが良いかと思います。

また、必要に応じてご利用ください。

(1) 基本for文 指定回数


	// 基本for文 ※指定回数(10回)
	for (int i = 0; i < 10; i++) {
		System.out.println(i);
	}

指定した回数文繰り返す場合に使用します。
説明の都合上先頭になっていますが、どちらかといえば稀に使用します。
また、以下の例では”10″と決め打ちになっていますが、定数とするほうがよいでしょう。

(2) for文 List編


	// 基本for文
	List<String> lst = new ArrayList<String>();
	lst.add("a");
	lst.add("b");
	for (int i = 0; i < lst.size(); i++) {
		System.out.println(i);
	}

Listを使用したfor文はJavaのプログラミングを行う上で超頻繁に使用しますので、この形は覚えておいた方がよいかと思います。
変数iを0で初期化し、変数lstの要素数分繰り返してくれます。

(3) 拡張for文


	// 拡張for文
	List<String> lst = new ArrayList<String>();
	lst.add("a");
	lst.add("b");
	for (String val : lst) {
		System.out.println(val);
	}

java 5 で追加されたfor文です。
(1)や(2)のようにわざわざ初期化、条件式を記載する必要がなく、簡潔な形式できさいできるよう、提供されています。
また、(1)と同様に要素数を意識することなく繰り返してくれるところが便利ですが、見やすさも意識した形になるかと思います。

(4) Iterator


	// Map内の情報を順次処理
	Map<String, Integer> mp = new HashMap<String, Integer>();
	mp.put("a", 1);
	mp.put("b", 2);
	for (Iterator<String> ite = mp.keySet().iterator(); ite.hasNext();) {
		System.out.println(ite.next());
	}

マップ(HashMap等)の要素を一つずつ取り出し処理したい場合のfor文です。

(5) steam


Java 8 では、steamを使用した繰り返し処理が可能になっています。

steamを利用するとfilterをかけれたりと、便利になっています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です