[RESOLVIDO]Preencher ArrayList logo ao crialo

Queria saber qual o método que ao se criar uma ArrayList você já determine alguns elementos que vão estar nela
Por exemplo, crio uma ArrayList e já quero que dentro dela esteja as strings “AAA”, “BBB”

List<String> myList = new ArrayList<String>(){
            {
             add("AAA");
             add("BBB");
            }

};

Isso mesmo, vlw ae fabio =D

Outra possibilidade é:

List&lt;String&gt; lista = Arrays.asList("AAA", "BBB");

Eu costumava fazer assim:

ArrayList<String> list = new ArrayList(new String[]{"AAA", "BBB"}); // edit: tinha esquecido os []

Hoje em dia eu sou mais feliz, uso Groovy ou a Lib Guava http://code.google.com/p/guava-libraries/wiki/NewCollectionTypesExplained.

ImmutableList<String> of = ImmutableList.of("a", "b", "c", "d");

[quote=ViniGodoy]Outra possibilidade é:

List&lt;String&gt; lista = Arrays.asList("AAA", "BBB");

Esta opção é a melhor. Cria menos objetos, não usa arrays e de quebra o list é imutável.

É a forma mais eficiente possivel na linguagem atual.

Usar classes anônimas,

[code] List<String> myList = new ArrayList<String>(){
{
add(“AAA”);
add(“BBB”);
}

};  [/code]

embora possivel, é muita viagem pois é equivalente a


 ArrayList&lt;String&gt; myList = new ArrayList&lt;String&gt;();
            
 myList.add("AAA");  
myList.add("BBB");  
      

Acho que o objetivo do lucas é a opção mais perto possivel de

List&lt;String&gt; lista = ["AAA", "BBB"];

que já é válida em algumas linguagens.

[quote=sergiotaborda][quote=ViniGodoy]Outra possibilidade é:

List&lt;String&gt; lista = Arrays.asList("AAA", "BBB");

Esta opção é a melhor. Cria menos objetos, não usa arrays e de quebra o list é imutável.

É a forma mais eficiente possivel na linguagem atual.

Usar classes anônimas,

[code] List<String> myList = new ArrayList<String>(){
{
add(“AAA”);
add(“BBB”);
}

};  [/code]

embora possivel, é muita viagem pois é equivalente a


 ArrayList&lt;String&gt; myList = new ArrayList&lt;String&gt;();
            
 myList.add("AAA");  
myList.add("BBB");  
      

Acho que o objetivo do lucas é a opção mais perto possivel de

List&lt;String&gt; lista = ["AAA", "BBB"];

que já é válida em algumas linguagens.

[/quote]

A classe interna anônima é exatamente o que ele pediu. Como você mesmo comentou, o método asList retorna uma lista imutável. Se ele quiser adicionar novos itens a exceção UnsupportedOperationException será disparada.