Como percorrer uma string que está dentro de um array?

Gostaria de saber como percorrer uma string que está dentro de um Array (saber a posição dos sub-indices)

String[] estrofes = {"As armas e os Barões assinalados \n Que da Ocidental praia Lusitana\n", "Por mares nunca de antes navegados\n Passaram ainda além da Taprobana,\n Em perigos e guerras esforçados\n
Mais do que prometia a força humana,\n E entre gente remota edificaram Novo Reino,\n que tanto sublimaram;\n", "E também as memórias gloriosas\nDaqueles Reis que foram dilatando\nA Fé, o Império, e as terras viciosas\nDe África e de Ásia andaram devastando,\nE aqueles que por obras valorosos\nSe vão da lei da Morte libertando,\nCantando espalharei por toda parte,\nSe a tanto me ajudar o engenho e arte\n"}
for(String estrofe : estrofes) {
    System.out.println(estrofe);
}

Está retornando o registro inteiro e os listando, eu gostaria analisar o elemento que está dentro do array, já tentei o método split, porém ele não está ocasionando a quebra nem me permitindo acessar esse array for do laço.

Então relate melhor sua dúvida, exemplifique seria ideal

Quero obter o resultado de ter arrays, 1 só com as informações das estrofes, enquanto outro n arrays em relação ao número de registros, com esses arrays subdividindo as informações do registro do 1° array, algo que o segundo array teria o seguinte design


versos[1] ="As armas e os Barões assinalados"
versos[2] = "Que da Ocidental praia Lusitana"
versos[3] = "Por mares nunca de antes navegados"
versos[4] = "Passaram ainda além da Taprobana"
versos[5] = "Em perigos e guerras esforçados"
versos[6] = "Mais do que prometia a força humana"
versos[7] = "E entre gente remota edificaram Novo Reino"
versos[8] = "que tanto sublimaram;"

Notei que o array original está dividido em estrofes.

Cada estrofe está “dividida” com uma quebra de linha (\n)

Portanto, mantenha a minha sugestão e, depois, use o split para quebrar a estrofe em versos.

for(String estrofe : estrofes) {
    String[] versos = estrofe.split("\\r?\\n"); //Precisa do \\r? para permitir a quebra na quebra de linha
    for(String verso : versos) {
        System.out.println(verso);
    }
}

@darlan_machado ele está quebrando, mas gostaria de acessar esses vetores ou ter o retorno de ambos, de forma mimificada está assim.

  ArrayList<String> estrofes = new ArrayList<String> ();
        estrofes.add("As armas e os Barões assinalados \n Que da Ocidental praia Lusitana\n "
                + "Por mares nunca de antes navegados\n Passaram ainda além da Taprobana "
                + "Em perigos e guerras esforçados\n Mais do que prometia a força humana"
                + "E entre gente remota edificaram Novo Reino,\n que tanto sublimaram;\n"
                + "E também as memórias gloriosas\nDaqueles Reis que foram dilatando\nA Fé, o Império, e as terras viciosas\nDe África e de Ásia andaram devastando\n "
                + "E aqueles que por obras valorosos\nSe vão da lei da Morte libertando,"
                + "\nCantando espalharei por toda parte,\nSe a tanto me ajudar o engenho e arte\n");
        ArrayList<String> versos = new ArrayList<String> ();
            for(int x = 0; x < estrofes.size(); x++) {
              String[] aa = estrofes.split("\\r?\\n"); 
              for(String verso : aa) {
               versos.add(verso);
              }
           }
//            System.out.println(estrofe[1]);
//            System.out.print(verso[1]);
    }

Já te dei o caminho, agora você pode utilizar o mesmo para alcançar o objetivo que tem.