Como faço para fazer uma consulta em uma Lista

Classe Revista
Uma revista é instanciada com o atributo reciclagemProduzida = 0.
As edições das revistas devem ser implementadas em uma lista nesta classe.
O método adicionarEdicao() deve instanciar uma edição a partir dos dados recebidos em
sua lista de parâmetros e armazenar a edição na lista de edições nesta classe.
O método removerEdicao() deve remover a edição recebida por parâmetro da lista de
edições desta classe.
O método reciclarEdicao() deve receber o número da edição para reciclar.
• Se a edição não existir na lista de edições da revista, retornar: “Edição não encontrada”.
• Se não houver edições para reciclar porque toda a tiragem foi vendida, retornar “Não
houve exemplares para reciclar”.
• Se a edição já foi reciclada, retornar: “Edição já reciclada”.
• Se a reciclagem puder ser realizada: acumular no atributo reciclagemProduzida a
quantidade de exemplares reciclado, obtido através do método
obterQtdeReciclagem() da classe Edicao e retornar “Reciclagem realizada”.

package Aldo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Revista {
	
	private int idRevista;
	private String titulo;
	private int reciclagemProduzida;
	private Edicao edicao;
	private List<Edicao> edicoes;  
	
	
	public Revista(int idRevista, String titulo) {
		this.idRevista = idRevista;
		this.titulo = titulo;
		this.edicoes = new ArrayList<Edicao>();
	}

	
	public void adiconarEdicao(int numeroEdicao, Date date, int tiragem, int qtdeVendida) {
		edicoes.add( new Edicao (numeroEdicao, date, tiragem, qtdeVendida));
	}
	
	public void removerEdicao(Edicao edicao) {
		edicoes.remove(edicao);
	}
	
	
	public String reciclarEdicao(int numeroEdicao) {
		
		
		
		
	
	}
	
	


	public String getTitulo() {
		return titulo;
	}


	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}


	public int getReciclagemProduzida() {
		return reciclagemProduzida;
	}


	public void setReciclagemProduzida(int reciclagemProduzida) {
		this.reciclagemProduzida = reciclagemProduzida;
	}


	public Edicao getEdicao() {
		return edicao;
	}


	public void setEdicao(Edicao edicao) {
		this.edicao = edicao;
	}


	public int getIdRevista() {
		return idRevista;
	}

	
	
	
	
}

Você pode usar filter da api de stream ou um loop fazendo as verificações até encontrar o elemento.

Usando Stream API:

Stream<T> filter(Predicate<? super T> predicate)

FONTE (com exemplos): https://www.baeldung.com/java-stream-filter-lambda

2 curtidas