Trabalhando com ArrayList

3 respostas
criador

Bom dia gujianos!
Tenho a seguinte dúvida…
Tenho uma lista de valores para seleção (JCheckBox) em uma janelinha.
Até aí tudo certo.
Porém quero fazer com que este ArrayList insira um valor (checkbox.add(“A”)) quando eu selecionar um valor da lista e remova um valor (checkbox.remove("A)) quando eu “desselecionar” um valor desta lista.
Isso imagino ser tranqüilo.

Aqui vem o detalhe:

Nesta minha janela para seleção de algum valor, posso adicionar um nova linha para a pesquisa.
Ou seja, na primeira linha eu decido escolher uns carros. Seleciono CORSA, GOL e FUSCA.
Na segunda pesquisa quero escolher os itens para ele. Seleciono AR-CONDICIONADO e VIDRO ELÉTRICO.
Ok.

Mas se eu quiser voltar para a primeira linha (onde selecionei os carros) e selecionar mais um carro (BMW) o meu array adiciona juntamente com o carro os itens, pois quem está no array agora são os itens da segunda linha.
Entenderam?
Ou seja, cada linha que adiciono eu limpo o array.

A minha dúvida é a seguinte:
Tem como eu manipular este array para ele saber em qual linha estou e pegar somente os valores desta linha?
Ou é melhor eu criar um array novo para cada linha que eu adicionar?

Espero que tenham entendido a minha pergunta.
Mas se não entenderam perguntem por favor.
Abraço a todos…

3 Respostas

M

Ops… está meio confuso.

Você tem uma linha (?!?) para os carros e outra para os acessórios? Não entendi bem seu problema, mas você poderia ter uma classe Carro e para cada instância definir um nome e uma ArrayList com todos os acessórios, ou algo do gênero.

Andre_Brito

Opa.

Eu faria como você disse: um ArrayList para cada linha. Ou você pode usar um Map, onde a chave seria a linha (Automovel, Pecas, …), mas ainda acho mais fácil ArrayList.

Abraço.

criador

André Brito, me desse uma boa idéia.
Vou criar um HashMap e inserir nele a chave (que será o índice da linha) e o conteúdo desta linha.
Assim quando eu quiser pesquisar o conteúdo desta linha, é só pesquisar o conteúdo desta linha em específico.
Vou tentar fazer isso e quando tiver alguma resposta (se deu certo ou errado) lhes aviso!
Abraços…valeu por enquanto!

Criado 5 de janeiro de 2009
Ultima resposta 5 de jan. de 2009
Respostas 3
Participantes 3