リストを使って繰り返し処理する場合は、ただの for 文を使うよりも「拡張 for 文」を使う方が便利です。

リストにおける拡張 for 文の文法は以下の通りです。

リストにおける拡張 for 文の文法

for( 型名 変数 : リスト名 )
  繰り返し内容
}

この拡張 for 文は次の様に使います。

ソース 1: リストにおける拡張 for 文の使用例
import java.util.ArrayList;

public class Main{
    public static void main(String[] args) {
        // リスト定義
    	ArrayList<String> list = new ArrayList<String>();

        // 一番後に要素を追加
    	list.add( "hoge" );
    	list.add( "fuga" );
    	list.add( "piyo" );

        // 拡張 for 文
        for( String str : list ){
            System.out.println( str );
        }
    }
}

実行すると for 内で定義した String 型変数 str に list の要素が先頭から順番に入って表示されます。

ソース 1 の実行結果
hoge
fuga
piyo

なおマップでも拡張 for 文は使えますが、若干文法が難しいのでこのあと勉強するforEach 文を使う方が便利です。
参考までにマップでの拡張 for 文の使用例を以下に示します。

ソース 2: マップにおける拡張 for 文の使用例
import java.util.HashMap;

public class Main{
    public static void main(String[] args) {

        // マップ定義
    	HashMap map = new HashMap();

        // 要素を追加
        map.put( "hoge", 123 );
        map.put( "fuga", 456 );
        map.put( "piyo", 789 );

        // 拡張 for 文
        for( var entry : map.entrySet()) {
            System.out.println( entry.getKey() );
            System.out.println( entry.getValue() );
        }
    }
}

実行すると for 内で定義した Entry 型変数 entry に map のキーと値が先頭から順番に入って表示されます。

ソース 2 の実行結果
hoge
123
fuga
456
piyo
789