Imprimir uma ArrayList em Java
-
Imprimir Arraylist em Java utilizando o
for
Loop -
Imprimir Arraylist em Java utilizando
forEach
- Imprimir Arraylist em Java utilizando IDs
-
Imprimir Arraylist em Java Utilizando o comando
toString()
Neste artigo, vamos analisar várias formas de imprimir uma Arraylist em Java. O nosso Arraylist irá conter um objecto de classe chamado ModelClass
, que tem uma variável name
e funções getter/setter
.
Imprimir Arraylist em Java utilizando o for
Loop
Podemos imprimir os objectos da Java ArrayList usando um loop. Aqui, utilizamos o laço for
para percorrer todos os objectos ModelClass
dentro de modeList
e chamar a função getName()
, que retorna o nome.
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<ModelClass> modelList;
ModelClass m1 = new ModelClass();
ModelClass m2 = new ModelClass();
ModelClass m3 = new ModelClass();
m1.setName("Sam");
m2.setName("Kevin");
m3.setName("Gwen");
modelList = new ArrayList<ModelClass>();
modelList.add(m1);
modelList.add(m2);
modelList.add(m3);
for (int i = 0; i < modelList.size(); i++) {
System.out.println(modelList.get(i).getName());
}
}
}
class ModelClass {
private String name;
void setName(String name) {
this.name = name;
}
String getName() {
return name;
}
}
Resultado:
Sam
Kevin
Gwen
Imprimir Arraylist em Java utilizando forEach
Em Java, cada ArrayList tem um método forEach
, que é uma das formas mais simples de percorrer todos os itens, tal como o for
loop. Tal como o exemplo anterior, podemos obter os nomes a partir de ModelClass
utilizando o método getName()
.
import java.util.ArrayList;
import java.util.Arrays;
import java.util.function.Consumer;
public class Main {
public static void main(String[] args) {
ArrayList<ModelClass> modelList;
ModelClass m1 = new ModelClass();
ModelClass m2 = new ModelClass();
ModelClass m3 = new ModelClass();
m1.setName("Sam");
m2.setName("Kevin");
m3.setName("Gwen");
modelList = new ArrayList<ModelClass>();
modelList.add(m1);
modelList.add(m2);
modelList.add(m3);
modelList.forEach(new Consumer<ModelClass>() {
@Override
public void accept(ModelClass modelClass) {
System.out.println(modelClass.getName());
}
});
}
}
class ModelClass {
private String name;
void setName(String name) {
this.name = name;
}
String getName() {
return name;
}
}
Resultado:
Sam
Kevin
Gwen
Imprimir Arraylist em Java utilizando IDs
Cada elemento da ArrayList recebe uma identificação única para o identificar; podemos obtê-la se imprimirmos a ArrayList sem utilizar qualquer método como toString()
. Irá imprimir a ArrayList em bruto com os IDs do item, que pode ver na saída do exemplo:
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<ModelClass> modelList;
ModelClass m1 = new ModelClass();
ModelClass m2 = new ModelClass();
ModelClass m3 = new ModelClass();
m1.setName("Sam");
m2.setName("Kevin");
m3.setName("Gwen");
modelList = new ArrayList<ModelClass>();
modelList.add(m1);
modelList.add(m2);
modelList.add(m3);
System.out.println(modelList);
}
}
class ModelClass {
String name;
void setName(String name) {
this.name = name;
}
}
Resultado:
[ModelClass@682a0b20, ModelClass@3d075dc0, ModelClass@214c265e]
Imprimir Arraylist em Java Utilizando o comando toString()
O último método desta lista está a sobrepor-se a um método toString()
dentro da ModelClass
. Esta função devolverá o name
quando o chamarmos utilizando modeList
. Note que este processo só pode retornar valores de string, como implícito no seu nome.
import java.util.ArrayList;
import java.util.Arrays;
import java.util.function.Consumer;
public class Main {
public static void main(String[] args) {
ArrayList<ModelClass> modelList;
ModelClass m1 = new ModelClass();
ModelClass m2 = new ModelClass();
ModelClass m3 = new ModelClass();
m1.setName("Sam");
m2.setName("Kevin");
m3.setName("Gwen");
modelList = new ArrayList<ModelClass>();
modelList.add(m1);
modelList.add(m2);
modelList.add(m3);
System.out.println(modelList.toString());
}
}
class ModelClass {
private String name;
void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "ModelClass{"
+ "name='" + name + '\'' + '}';
}
}
Resultado:
[ModelClass{name='Sam'}, ModelClass{name='Kevin'}, ModelClass{name='Gwen'}]
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn