「拡張for文」の版間の差分

提供: Java入門
移動: 案内検索
(ページの作成:「拡張for文(for-each文)とは、Java 5.0 で導入された foreach 文です。配列やListなどのコレクションを簡単に回せます。 '''読み...」)
 
 
(同じ利用者による、間の1版が非表示)
行1: 行1:
[[拡張for文]](for-each文)とは、Java 5.0 で導入された foreach 文です。配列や[[List]]などのコレクションを簡単に回せます。
+
[[拡張for文]](for-each文)とは、Java 5.0 で導入された foreach 文です。配列や[[List]]などのコレクションを簡単に回せます。Java 8 では、[[List]]などのコレクションクラスに[[forEach]]メソッドが導入されました。
  
 
'''読み方'''
 
'''読み方'''
行6: 行6:
 
__TOC__
 
__TOC__
 
== 概要 ==
 
== 概要 ==
[[拡張for文]] は、foreach文です。
+
[[拡張for文]] は、foreach文です。C++でいえば、C++11で導入されたRange-based for loopです。
 +
 
 +
Javaの[[拡張for文]]の文法は、以下の通りです。
 
<syntaxhighlight lang="java">
 
<syntaxhighlight lang="java">
 
for ( 変数: コレクションや配列 ) {
 
for ( 変数: コレクションや配列 ) {
行12: 行14:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
C++でいえば、C++11で導入されたRange-based for loopです。
+
 
 +
array は、int の配列です。従来のfor文を利用した書き方では、以下のコードですが、
 +
<syntaxhighlight lang="java">
 +
for ( int i = 0; i < array.length; i++ ) {
 +
System.out.println(array[i]);
 +
}
 +
</syntaxhighlight>
 +
[[拡張for文]]を使用すると
 +
<syntaxhighlight lang="java">
 +
for ( int data : array) {
 +
System.out.println(data);
 +
}
 +
</syntaxhighlight>
 +
こんなに簡単に書けます。
 
== ソースコード ==
 
== ソースコード ==
 
=== Listでの例 ===
 
=== Listでの例 ===
行27: 行42:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[forEach]]
 
* [[List]]
 
* [[List]]
 +
* [[コレクションフレームワーク]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2015年3月21日 (土) 21:03時点における最新版

拡張for文(for-each文)とは、Java 5.0 で導入された foreach 文です。配列やListなどのコレクションを簡単に回せます。Java 8 では、ListなどのコレクションクラスにforEachメソッドが導入されました。

読み方

拡張for文
かくちょう ふぉー ぶん
for-each文
ふぉー いーち ぶん

概要

拡張for文 は、foreach文です。C++でいえば、C++11で導入されたRange-based for loopです。

Javaの拡張for文の文法は、以下の通りです。

for ( 変数: コレクションや配列 ) {
	// 処理
}

array は、int の配列です。従来のfor文を利用した書き方では、以下のコードですが、

for ( int i = 0; i < array.length; i++ ) {
	System.out.println(array[i]);
}

拡張for文を使用すると

for ( int data : array) {
	System.out.println(data);
}

こんなに簡単に書けます。

ソースコード

Listでの例

import java.util.*;
 
List<String> list = Arrays.asList(
	"foo", "bar", "hoge"
);
 
for (String s: list) {
	System.out.println(s);
}

関連項目