Ajuda percorrer ArrayList<String>

tenho o codigo


 ArrayList<String> teste = new ArrayList<String>();

     File pasta = new File("C:\\Nova");
        File arquivos[] = pasta.listFiles();
   File novo = new File("C:\\Renomear_arquivo\\teste.pdf");

        for(int i=0; i < arquivos.length; i++) {

                jTextArea1.append(mensagem +" \n");
              teste=  file.getName();

eu leio e pego o nome doas arquivos q estao dentro de um diretorio Nova, exemplo tenho 5 arquivos dentro desse diretorio, ai pego 1 por 1 e coloco dentro do ArrayList teste todos os nomes ate ai esta tudo certo, ai tenho 2 botoes proximo e anterior, para ir para percorrer o arraylist, comesso do 0 ate o 4 tudo certo so que nao consegui fazer voltar, como poderia fazer avancar e retroceder dentro do arraylist, quero percorrer todo o arraylista e depis voltar ate a posicao 0.

vc pode usar uma variável estatica para contrar o index de qual posição vc esta, quando “proximo” incrementa ++ no index quando “voltar” decrementa –
se é o que eu entendi

Cria uma variável para armazenar a posição lida no Array. Quando for para avançar, vc incrementa a variável. Para retroceder vc decrementa. Lembre de fazer as verificações para que ela não seja menor que 0 e maior que o tamanho do array.

poderia fazer um exemplo ???

int pro=0;
       if (pro<teste.size()){
       jTextArea1.append(teste.get(pro) +" \n");
       pro++;
       
 }

ai vou ate o final da posicao 0 ate seja qual for funciona beleza, o problema é voltar volto ela e volta menos que a posicao 0 e da erro como posso fazer voltar ???

As ações dos botões próximo e anterior.

void proximo()
{
    if (indice < lista.size() - 1) {
        indice++;
        String texto = lista.get(indice);
        escreve(texto);
    }
}

void anterior()
{
    if (indice > 0) {
        indice--;
        String texto = lista.get(indice);
        escreve(texto);
    }
}

ok valeu funcionou tudo certo agradeço…