Open FabioCantuario opened 6 months ago
Respondendo à sua dúvida, você está correto. Quando você coloca List<>, você estará retornando uma Lista, assim como se você colocar Integer, você estará retornando um inteiro e assim por diante. Não esqueça também que, quando não é void, você necessariamente precisa adicionar um return, pois você está, justamente, retornando alguma coisa.
Oi, @FabioCantuario. Tudo certinho?
Primeiramente muito obrigada pelo feeback. Fico muito feliz pelo retorno. <3
Então, é bem simples. Quando nós colocamos o retorno, a execução do método tem um retorno e este retorno podemos colocar em uma variável, por exemplo. E quando colocamos void
, a execução não tem retorno, só executa algo.
import java.util.ArrayList;
import java.util.List;
public class SimpleMethodExample {
public static void main(String[] args) {
// Chamando o método que retorna uma lista de frutas
List<String> fruits = getFruits();
// Usando a variável para imprimir as frutas
System.out.println(fruits); // [Apple, Banana, Orange]
// Chamando o método que não tem retorno, apenas adiciona uma fruta à lista
addFruitIfNotPresent(fruits, "Mango");
addFruitIfNotPresent(fruits, "Apple"); // Não adiciona "Apple" novamente
// Imprimindo a lista após adicionar as frutas
System.out.println(fruits); // [Apple, Banana, Orange, Mango]
}
// Método que retorna uma lista de frutas
public static List<String> getFruits() {
List<String> fruits = new ArrayList<>();
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Orange");
return fruits; // Retorna a lista de frutas
}
// Método que não tem retorno, apenas adiciona uma fruta à lista se ela não estiver presente
public static void addFruitIfNotPresent(List<String> fruits, String fruit) {
if (!fruits.contains(fruit)) {
fruits.add(fruit); // Adiciona a fruta se não estiver presente na lista
}
}
}
Um exemplo clássico, são os métodos auxiliares getter (com retorno) e setter (sem retorno).
public class Fruit {
private String name;
// Getter: método que retorna o valor do campo 'name'
public String getName() {
return name;
}
// Setter: método que define o valor do campo 'name'
public void setName(String name) {
this.name = name;
}
public static void main(String[] args) {
// Criando uma instância da classe Fruit
Fruit apple = new Fruit();
// Usando o setter para definir o nome da fruta
apple.setName("Apple");
// Usando o getter para obter o nome da fruta
System.out.println(apple.getName()); // Apple
}
}
Espero que tenha clarificado os conceitos. Bons estudos para nós!
Olá Cami, decidir colocar aqui meu agradecimento pelo compartilhamento de seus conhecimentos e apesar de essa parte de List, Set e Map ser bem cabeça.. você conseguiu transimitir muito bem o conteúdo.. meus parabéns, gostei muito de sua forma de explicar e aplicar os exemplos, gostaria muito de ter mais detalhes sobre esse assunto, não sou da área desenvolvimento, mas desejo atuar ou pelo menos criar um sistema em breve para atender uma necessidade de onde trabalho.. mas valeu pelos ensinamentos.
Aproveitando, só fiquei com uma dúvida básica, mas vou rever os vídeos, porque em alguns metodos o tipo era List<> e outras void, sei que o void não traz retorno, mas não associei muito bem porque o uso do tipo List em alguns metodos? Neste caso seria retornando uma Lista?