Problemas com ArrayList

5 respostas
rodsm

Boa tarde,

Estou com um pequeno problema
Estou tentando fazer a seguinte linha de código, porém isso gera erro, alguém sabe como posso fazer de uma maneira mais
fácil o que está abaixo, usando ArrayList:

ArrayList<String>   mUnidade = new ArrayList<String>();
mUnidade.add("1", "Um", "2", "Dois", "3", "tres", "4", "quatro", "5", "cinco",
"6", "seis", "7", "sete", "8", "oito",  "9", "nove");

ERRO GERADO

NumeroExtenso.java:24: cannot find symbol
symbol: method addAll(java.lang.String,java.lang.String,java.lang.String,java.
lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,
java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,
java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)
location: class java.util.ArrayList<java.lang.String>
        mUnidade.addAll("1", "Um", "2", "Dois", "3", "tres", "4", "quatro", "5",
 "cinco", "6", "seis", "7", "sete", "8", "oito",

^
1 error

Obrigado amigos.

5 Respostas

thiago.correa

O método add ou ele aceita um inteiro e mais um elemento ou somente um elemento!!
O certo seria

ArrayList<String>   mUnidade = new ArrayList<String>();
 mUnidade.add(1, "Um");
 mUnidade.add(2, "Dois");
 //...
  mUnidade.add(9, "Nove");

P.S.: Só para lembrar. Arrays em java começam a partir do indice 0!

P

rodsm,

O metodo add da classe ArrayList, aceita apenas um obejto.

O que vc esta tentando fazer funciona para arrays
Tambem existe um add que aceita um index para inclusao do objeto

http://java.sun.com/j2se/1.5.0/docs/api/java/util/ArrayList.html

ramilani12

O método add() recebe como parametro um int e Object ou um Object e addAll() recebe como paramentro uma Collection

A forma que vc esta utilizando é errada , vc deve inserir dessa forma:

mUnidade.add("1");
mUnidade.add("2");

Sugestão insere os elementos em um loop

nicholas.bittencourt

Já experimentou colocar os elementos num Array e depois adicionar o array na Collection??

Por exemplo:

String[] s = new String[] { "a","b","c"};
ArrayList a = new ArrayList();
a.addAll(Arrays.asList(s));
rodsm

Grato! 8)

Criado 15 de junho de 2007
Ultima resposta 15 de jun. de 2007
Respostas 5
Participantes 5