[Resolvido]Popular List<String> com for

Galera estou com uma duvida ou mlehor uma falta de lógica, gostaria que me ajudassem.
Tenho uma tela de aviso onde preciso adicionar diversos avisos porém não sei a quantidade de avisos
que podem ser apresentada na tela. ou seja preciso criar uma maneira que o list receba essa quantidade
e vá adicinando.
Alguem pode me dizer como posso fazer isso?
Creio que seria mais ou menos assim:
package testes;

import java.util.ArrayList;
import java.util.List;

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

		String[] av = new String[5];
		av[0] = "a1";
		av[1] = "a2";
		av[2] = "a3";
		av[3] = "a4";
		av[4] = "a5";
		List<String> avisos = new ArrayList<String>();
		
		for (int i = 0; i < av.length; i++) {
			avisos.add(av[i]);
			System.out.println(avisos);
		}
	}
}

saida:

[a1]
[a1, a2]
[a1, a2, a3]
[a1, a2, a3, a4]
[a1, a2, a3, a4, a5]

com esse processo não consegui:
Queria que fosse fazendo assim:

aviso.add("A1");
aviso.add("A2");
aviso.add("A3");
.
.
.

e a saida:

a1 a2 a3 a4 a5

e assim consecutivamente até finalizar o processo.
Claro que essa é uma classe apenas de exemplo para simplificar o meu problema.
Obs: Devo usar o LIST pois há mais informações a serem contempladas.
Vlw.

Cara…não vejo a necessidade do array…
cria uma lista de String no inicio do programa:

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

e quando precisar adicionar… é só usar…

avisos.add(“AVISO”);

pela List vc tem o tamanho da lista e vc pode pegar os objetos em determinadas posições tb.

abrcs

[quote=duduribeiro]Cara…não vejo a necessidade do array…
cria uma lista de String no inicio do programa:

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

e quando precisar adicionar… é só usar…

avisos.add(“AVISO”);

pela List vc tem o tamanho da lista e vc pode pegar os objetos em determinadas posições tb.

abrcs[/quote]

Isso.
Você pode usar

String aviso=avisos.get(indice);

http://download.oracle.com/javase/6/docs/api/java/util/List.html

[quote=duduribeiro]Cara…não vejo a necessidade do array…
cria uma lista de String no inicio do programa:

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

e quando precisar adicionar… é só usar…

avisos.add(“AVISO”);

pela List vc tem o tamanho da lista e vc pode pegar os objetos em determinadas posições tb.

abrcs[/quote]
Valeu pela resposta. Mas o array coloquei foi apenas para citar como exemplo simples, onde o que quero fazer é exatamente o seguinte.
Não posso colocar avisos.add(“Aviso”) uma quantidade especifica pois não sei o tamanho do array de aviso, pode ser que contenha 5 avisos ou 20 avisos e o eu quero fazer é que o for faça com que avisos.add(" ") adicione a quantidade que for necessária.
Valeu. Vou analisar melhor o contexto.

Se eu entendi bem, o seu próprio código está correto.
O que está ocorrendo é que você está mostrando o seu List dentro do loop.
Logo, na primeira iteração ele contém apenas um elemento, na segundo o primeiro elemento + o que foi adicionado na segunda iteração.

Para você ver o resultado final (e apenas o final) basta fazer a seguinte alteração:

import java.util.ArrayList;
import java.util.List;

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

		String[] av = new String[5];
		av[0] = "a1";
		av[1] = "a2";
		av[2] = "a3";
		av[3] = "a4";
		av[4] = "a5";
		List<String> avisos = new ArrayList<String>();
		
		for (int i = 0; i < av.length; i++) {
			avisos.add(av[i]);
			//System.out.println(avisos);//remova esta linha
		}
		System.out.println(avisos);//Coloque-a aqui
	}
}

É isso que você quer?

[quote=wagner_a_lima]Se eu entendi bem, o seu próprio código está correto.
O que está ocorrendo é que você está mostrando o seu List dentro do loop.
Logo, na primeira iteração ele contém apenas um elemento, na segundo o primeiro elemento + o que foi adicionado na segunda iteração.

Para você ver o resultado final (e apenas o final) basta fazer a seguinte alteração:

import java.util.ArrayList;
import java.util.List;

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

		String[] av = new String[5];
		av[0] = "a1";
		av[1] = "a2";
		av[2] = "a3";
		av[3] = "a4";
		av[4] = "a5";
		List<String> avisos = new ArrayList<String>();
		
		for (int i = 0; i < av.length; i++) {
			avisos.add(av[i]);
			//System.out.println(avisos);//remova esta linha
		}
		System.out.println(avisos);//Coloque-a aqui
	}
}

É isso que você quer?[/quote]

Puts cara é isso mesmo. Nossa que vacilo. Valeu agora posso dar continuidade pois fiz esse exemplo apenas para ver o resultado agora vou transferir para a aplicação.
Valeu.

O ArrayList cresce a medida que você insere dados nele. Você não precisa se preocupar com o tamanho.
Dê uma olhada: http://www.guj.com.br/java/74068-classe-vector#389435