Uma grande dúvida que costuma surgir no programadores iniciantes é como transformar um objeto List, ArrayList para Array e vice versa.
Abaixo mostro como fazer os dois casos, caso tenham dúvidas deixem nos comentários.
//Convertendo Array para List
//Criando um array
//Uma forma é criar o array, já passando os valores.
String[] nomes = new String[]{"Maria","José","Ana","João"};
//Outra forma seria primeiro declarar os valores e depois preenchê-los
String[] animais = new String[4];
animais[0] = "Gato";
animais[1] = "Pato";
animais[2] = "Zebra";
//Uma forma de converter nosso array de nomes para uma lista
java.util.List
for(String s: nomes){
nomesLista.add(s);
}
//Outra forma seria utilizando uma biblioteca existente
//Convertendo dessa primeira forma, o array é associado a lista, ou seja,
//se mais algum objeto for inserido será inserido na lista e no array simultaneamente
java.util.List
//Se tentarmos inserir mais um item no nosso array que continha uma posição sobrando,
//o item será inserido também na lista
animais[3] = "Leão";
//Se tentarmos inserir na lista ocorrerá um erro quando o sistema tentar inserir simultaneamente no array
//animaisLista.add("Leão"); //Lança uma exceção java.lang.UnsupportedOperationException
//Outra forma seria criar uma cópia desse array e transformá-lo em lista, para ao alterar um não afetar o outro
//e consequentemente conseguir continuar manipulando a nova lista criada
java.util.List
animaisListaSegundo.add("Onça");
//Convertendo List para Array
//Criando uma lista
java.util.List
objetosLista.add("Copo");
objetosLista.add("Faca");
//Criando um varíavel array e definindo o tamanho da lista como tamanho do array
String[] objetosArray = new String[objetosLista.size()];
//Convertendo de lista para array, nesse caso o sistema já cria uma cópia
//e depois de convertido as alterações em uma não afetam a outra
objetosArray = objetosLista.toArray(objetosArray);
//Inserindo mais um item na lista, esse item não é inserido no array
objetosLista.add("Colher");
Nenhum comentário:
Postar um comentário