Inicializar Lista de Strings em Java
-
Utilizar
ArrayList,LinkedListeVectorpara Instanciar uma Lista de Strings em Java -
Utilize a
Arrays.asListpara instanciar umaListde String em Java -
Utilize
Streamem Java 8 para Instanciar umaListde String em Java -
Utilize o
List.ofpara instanciar umaListde String em Java
Neste tutorial, veremos várias formas de inicializar uma lista de strings em Java. Uma vez que a lista é uma interface, não a podemos instanciar directamente.
Utilizar ArrayList, LinkedList e Vector para Instanciar uma Lista de Strings em Java
Uma List é uma interface infantil de Collections em Java. É uma colecção ordenada de objectos que podem armazenar valores duplicados. A instância de Lista pode ser criada utilizando classes que implementam a interface de List.
ArrayList, Vector, LinkedList e Stack são algumas destas classes. Criamos uma instância myList de uma List utilizando new ArraList<String>(). Portanto, podemos declarar e criar uma instância de List utilizando qualquer uma das seguintes formas mostradas abaixo e realizar várias operações nessa List.
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;
public class ListExample {
public static void main(String[] args) {
List<String> myList = new ArrayList<String>();
List<Fruits> lList = new LinkedList<Fruits>();
List<Integer> vList = new Vector<Integer>();
myList.add("Happy");
myList.add("Coding");
lList.add(new Fruits("Grapes", "Green"));
lList.add(new Fruits("Apple", "Red"));
vList.add(1);
vList.add(4);
vList.add(9);
vList.add(7);
vList.remove(2);
for (String s : myList) {
System.out.println(s);
}
for (Fruits f : lList) {
System.out.println(f.name + " is " + f.color + " in color.");
}
for (int i : vList) {
System.out.println(i);
}
}
}
class Fruits {
String name;
String color;
Fruits(String name, String color) {
this.name = name;
this.color = color;
}
}
Resultado:
Happy
Coding
Grapes is Green in color.
Apple is Red in color.
1
4
7
Utilize a Arrays.asList para instanciar uma List de String em Java
O método Arrays.asList devolve uma lista de tamanho fixo que é apoiada por um array. Este é apenas um invólucro que torna o array disponível como uma lista. Não podemos modificar esta lista, uma vez que é imutável.
Aqui no código, obtemos uma instância de List chamada myList cujo comprimento não pode ser modificado.
import java.util.Arrays;
import java.util.List;
public class ListExmp {
public static void main(String[] args) {
List<String> myList = Arrays.asList("John", "Ben", "Gregor", "Peter");
String name = myList.get(3);
System.out.println(name);
}
}
Resultado:
Peter
Utilize Stream em Java 8 para Instanciar uma List de String em Java
Java 8 Stream inclui envoltórios em torno de uma fonte de dados que torna um processo volumoso sobre os dados fácil e conveniente.
O método Stream.of() constrói um fluxo de dados e recolhe-os numa lista. A interface Collector fornece a lógica para esta operação. O Collector.toList() recolhe todos os elementos do fluxo de dados numa instância de List.
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class ListExmp {
public static void main(String[] args) {
List<String> list = Stream.of("john", "doe").collect(Collectors.toList());
if (list.contains("doe")) {
System.out.println("doe is there");
} else {
System.out.println("doe is not there");
}
}
}
Resultado:
doe is there
Utilize o List.of para instanciar uma List de String em Java
O List.of é o novo método introduzido em Java 9. No código abaixo, o método List.of() toma qualquer número de argumentos e retorna uma lista imutável. Temos a Lista imutável como uma instância inalterável de List.
Temos de instanciar a ArrayList com uma lista imutável como parâmetro para criar uma lista mutável. Como mostrado no código abaixo, podem ser feitas modificações na instância mutableList da List.
import java.util.ArrayList;
import java.util.List;
public class ListExmp {
public static void main(String[] args) {
List<String> immutableList = List.of("One", "Two", "Three", "Four", "Five");
List<String> mutableList = new ArrayList<>(List.of("Six", "Seven", "Eight"));
for (String l : immutableList) {
System.out.println(l);
}
System.out.println("XXXXXX");
mutableList.add("Nine");
for (String l : mutableList) {
System.out.println(l);
}
}
}
Resultado:
One
Two
Three
Four
Five
XXXXXX
Six
Seven
Eight
Nine
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