0

for(File file : files )次のコードで検討してください。この構文は見たことがありません。コンテキストと動作から、レコード数に基づく for ループであることがわかります... に似てい(for x=0;x<length.foo;++x)ます。それを超えて、私は確信が持てません。これは、まだ習っていない for ループの短縮形ですか? これはオブジェクト専用のループですか? さらに重要なことに...特定の構文に関する情報をグーグルで検索したい場合、どのように説明すればよいですか?

明確化: 2 番目の質問です。この再帰的なファイル リストの方法が、ファイル名のリストを にどのように格納するのかにも興味がありますfile。これは配列ですか?コレクション?また...?結果のファイルを読み取る方法を知りたいです。

public static void main(String... aArgs) throws FileNotFoundException
{
    File startingDirectory= new File("CGT");
    List<File> files = WorkingFileListing2.getFileListingNoSort(startingDirectory);
    for(File file : files )
    {
       System.out.println(file);  //print filenames
    }
}
4

3 に答える 3

4

いわゆる「for each」ループです。

また、このメソッドがファイル名のリストをどのように に保存するのかにも興味がありますfile

そうではありません。の要素を繰り返し処理しfiles、順番にfile(一度に 1 つずつ!) に割り当てます。コードを実行すると、ループの反復ごとに 1 つのファイル名が出力されます。

その特定の構文に関する情報をグーグルで検索したい場合、どのように説明すればよいですか?

Google「Java for-each」。

于 2012-05-03T15:45:43.683 に答える
2

私には、C# の「foreach」に相当するように見えます。Google で「Java foreach」を検索すると、次のようになりまし た。Java For-Each ループの詳細

于 2012-05-03T15:47:33.263 に答える
2

これはforeach ループと呼ばれ、配列からオブジェクトを削除したくない場合にのみオブジェクトに使用されます。

于 2012-05-03T15:47:35.087 に答える