bugfix> java > 投稿

以下のコードの拡張forループが、標準のforループで表されている場合、どのように見えるかを誰かに説明してもらえますか? ex for(int loop = 0;loop<____;loop ++)など。拡張forループの機能を理解しようとしていますが、標準のforループでどのように表されるかを確認したいと思います。

public static void main(String[] args) {
    // get the list of each winning team by year
    ArrayList<String> allWinners = readAndPopulateWinnersList();
    int startYear = 1956;
    for(String teams : allWinners) {
        System.out.println(startYear++ + " : " + teams);
    }
    
    }

回答 1 件
  • あなたがあなたを変えたいなら for(String teams: allWinners) ここで標準ループにそれはあります:

    for (int i = 0; i < allWinners.size(); i++) {
        System.out.println(startYear++ + " : " + allWinners.get(i));
    }
    
    

    それぞれについて、.get(i)などのない単純なフォームがありますが、インデックスもありません。

    したがって、allWinnersアイテムをそのインデックスとともに印刷する場合は、標準のforループの方が適しています。 Java Streams APiを使用することもできます:https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html

    だからそれは allWinners.forEach(element -> System.out.println(startYear++ + " : " + element));

あなたの答え