4

私は理事会を含む課題をやっています。:基本コードは変更するために提供されていますが、 for() のパラメーターの が何を意味するのかわかりません。それはすべてのボード( )を通過しますArrayListか?

private ArrayList<MovingElement> moveElems = new ArrayList<MovingElement>();

for (MovingElement mElement : moveElems) {
    mElement.step();
}
4

8 に答える 8

10

forこれは、配列および anyIterableを含む anyを反復処理するために使用される特別な形式のループCollectionです。

これは、次のようにfor-eachループと呼ばれます: for each element of a list

読み: for (MovingElement mElement : moveElems)as _for each MovingElementin the collection moveElems_.

参照: For-Each ループ

于 2012-10-04T19:34:21.390 に答える
4

これはfor-eachJavaのループです。

Arraylist(または) 配列の各要素に対して。

要素は、for ループにスコープされる MovingElement mElement に割り当てられます。

于 2012-10-04T19:34:12.833 に答える
2

これは単純な foreach の種類のループで、指定された配列の各要素を反復処理します。

この場合、MovingElement は配列の型になり、mElement は現在の要素になり、moveElems は実際の配列になります。

「:」は 2 つの部分を区切るだけです

したがって、あなたの場合、ループは ArrayList の各要素を反復処理し、その step() メソッドを使用します。

于 2012-10-04T19:39:29.210 に答える
2

次のように考えてください。

for (MovingElement mElement : moveElems) {
    // translates into English like this: 
    // for EACH MovingElement object in the ArrayList moveElems, 
    // do the following code:
    mElement.step();
}

for each ループです。

于 2012-10-04T19:36:37.237 に答える
1

これは、Java では foreach または拡張 for ループと呼ばれます。char は、反復変数の':'型/名前をトラバースするオブジェクトから分離します。

Java 言語のバージョン1.5で導入されたことを知っておくと便利です。これはシンタックス シュガーです。標準の for ループやイテレータを使用することで、同じ反復動作を実現できます。

foreach ループは、配列内の要素、またはIterableインターフェイスを実装するオブジェクト (通常はコレクション) を反復処理するために使用できます。

参考までに、foreach ステートメントはJava 言語仕様のセクション14.14.2で定義されています。

于 2012-10-04T19:35:33.133 に答える
1

これは Java の「for each」構文です。これは、次のものとほぼ同等です。

Iterator<MovingElement> iter = moveElems.iterator();
while (iter.hasNext()) {
    iter.next().step();
}
于 2012-10-04T19:37:27.970 に答える
0

-今出くわしたのは、拡張 for ループとして知られているもの、またはより有名な for-each ループとして知られているものです。

for( DataType variable : Iterable )

例えば:

for( String variable : arr )

arr - String 型の配列または Collections (つまり、Iterables) にすることができます

s -反復ごとに arr の各値を取得し、それを s に割り当てます

于 2012-10-04T19:44:16.510 に答える
0

for-each ループは、反復子またはインデックスが反復のみに使用され、他の種類の操作には使用されない、最も一般的な形式の反復を単純化することを目的としています。

http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html

于 2012-10-04T19:38:16.300 に答える