Lista e arrays são duas maneiras de armazenar dados em Java que você usará com bastante frequência. Em projetos onde você precisa armazenar dados sem nenhum tipo de manipulação de arquivo, listas e arrays permitem que você armazene dados durante a execução do seu programa. Usaremos a classe ArrayList que implementa a interface de lista em Java de forma intercambiável ao longo deste tutorial.
Diferença entre lista e array
Lista |
Variedade |
O tamanho de uma lista pode ser alterado |
O tamanho de uma matriz não pode ser alterado |
Você não pode armazenar tipos primitivos na lista |
Você pode armazenar tipos primitivos em Array |
Você pode usar Genéricos com Lista |
Você não pode usar Generics com Array |
Consome mais memória |
Consome menos memória |
Convertendo lista em array com função de biblioteca
List tem um método
toArray() que converte diretamente o conteúdo de qualquer lista em um array enquanto retém o posicionamento do texto no Array como estava na lista original. Aqui está o algoritmo/etapas para converter uma lista em array em java usando esta função de biblioteca integrada.
- Inicialize um ArrayList.
- Adicione elementos à Lista por meio do método list.add(data_type) .
- Crie um Array com o mesmo tamanho da lista.
- Converta a lista em uma matriz usando o nome da variável da matriz criada na etapa 3 como um argumento.
- Imprima o conteúdo do Array.
O código que implementa essas etapas é fornecido abaixo.
import java.util.ArrayList;
public class convertListToArray {
public static void main(String[] args) {
//Converting List to Array With Library Function
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting List to Array
sampleList.toArray(arr);
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
Convertendo lista em array sem função de biblioteca
Às vezes, pode haver um requisito para converter a lista em uma matriz sem usar funções internas. O problema em questão pode usar certas restrições em termos de funções de biblioteca. Esse requisito é comum para estudantes de programação que são incentivados a trabalhar sem funções de biblioteca para ajudá-los a aprender o funcionamento interno dessas funções antes de implementá-las. Nesses casos, você pode usar as etapas a seguir para converter uma lista em uma matriz em java sem nenhuma função de biblioteca.
- Inicialize um ArrayList.
- Adicione elementos à Lista por meio do método list.add(data_type) .
- Crie um Array com o mesmo tamanho da lista.
- Crie um loop for que iterará cada elemento de ArrayList e o passará para Array[index] por meio da função list.get(index) .
- Imprima o conteúdo do Array para mostrar que você está realmente convertendo a lista em um array.
O código para implementar essas etapas é fornecido abaixo.
import java.util.ArrayList;
public class converListToArray2 {
public static void main(String[] args) {
//Converting List to Array Without Library Functions
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting to Array
for (int i = 0 ; i < arr.length ; i++){
arr[i] = sampleList.get(i);
}
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
Da mesma forma, se você também está se perguntando como converter um Array em uma Lista, pode fazê-lo usando o método integrado
Array.asList() ou iterando pelo array e armazenando valores em cada índice na Lista.
GO TO FULL VERSION