1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Pq eu removi um evento mais consta os 3 ainda ?

Oi gente, no codigo main chamei o metodo removerEvento(evento), mas e rodou numa boa, mas quando chamo a variavel estaica que conta a quantidade de eventos consta os 3 eventos que deveria constar 2 , pois removi um. vejam

Também, por quê o método List getEventos(), quando eu chamo, não retorna os eventos criados??

package AgendaSimples;

import java.awt.Event;
import java.util.ArrayList;
import java.util.List;

public class AgendaDeEventos {

    public static int quantidadeDeEventos;

    List<Evento>eventos = new ArrayList<Evento>();  

    public AgendaDeEventos(){

    } 
    public void adicionarEvento(Evento e){
        eventos.add(e);
        AgendaDeEventos.quantidadeDeEventos++;
    } 
    public void removerEvento(Evento evento){
         boolean removeu = false; 
         for(Evento e: this.eventos){
             if(e.getData().equals(evento)){ 
                 this.eventos.remove(evento); 
                 removeu = true; 
             }  
         } 
    } 
    public List<Evento> pesquisaEventoDaData(String data){
         List<Evento>pesquisaData = new ArrayList<Evento>(); 
         for(Evento e: this.eventos){
             if(e.getData().equals(data)){
                 pesquisaData.add(e); 
             }
         }
         return pesquisaData; 
    } 
    public List<Evento> getEventos(){ 
        return eventos; 
    }
}


package AgendaSimples;

public abstract class Evento { 

    private String data;
    private String horaInicio;
    private String horaFim;

    public static final String DATA_DEFAULT = "01/02/13";
    public static final String HORA_INICIO_DEFALT = "10:50";
    public static final String HORA_FIM_DEFAULT = "19:10"; 
    public Evento() {

    }
    public Evento(String data,String horaInicio,String horaFim){
        this.data = data;
        this.horaFim = horaFim;
        this.horaInicio = horaInicio;
    }
    public abstract String getDescricao();
    public String getData() {
        return data; 
    }
    public void setData(String data) {
        this.data = data;
    }
    public String getHoraInicio() {
        return horaInicio;
    }
    public void setHoraInicio(String horaInicio) {
        this.horaInicio = horaInicio;
    }
    public String getHoraFim() {
        return horaFim;
    }
    public void setHoraFim(String horaFim) {
        this.horaFim = horaFim;
    }
}



package AgendaSimples;

public class Aniversario extends Evento{

    private String nomeAniversariante;

    public Aniversario() {

    }
    public Aniversario(String data,String horaInicio,String horaFim,String nomeAniversariante){
        super(data,horaInicio,horaFim);
        this.nomeAniversariante = nomeAniversariante; 
    }

    @Override 
    public String getDescricao() { 
        return "Nome do aniversariante "+nomeAniversariante+" Data: "+super.getData()+" Horas: "+HORA_FIM_DEFAULT;        
    } 
}



package AgendaSimples;

public class Reuniao extends Evento {

    private String assunto;
    private String nome;
    public Reuniao(String data,String horaFim,String horaInicio,String assunto) {
        super(data,horaInicio,horaFim);
        this.assunto = assunto;
    }
    @Override
    public String getDescricao() { 
        return "Reunião as: "+HORA_INICIO_DEFALT+"com as pessoas: "+nome;
    }
}



package AgendaSimples;

import java.util.List;

public class AgendaTest {

    public static void main(String[] args) {
        AgendaDeEventos agenda = new AgendaDeEventos();

        Evento e1 = new Aniversario("02/04/14","16:00","22:00","Manoel"); 
        agenda.adicionarEvento(e1);

        Evento e2 = new Reuniao("25/10/13","07:00","12:00","LP");
        agenda.adicionarEvento(e2); 

        Evento e3 = new Aniversario("15/07/2014","08:00","12:30","Jose");
        agenda.adicionarEvento(e3); 

        agenda.getEventos();   
        List <Evento>eventosDoDia15 = agenda.pesquisaEventoDaData("15/07/2014");

        agenda.removerEvento(e3); 
        System.out.println(AgendaDeEventos.quantidadeDeEventos);

        for(Evento e: eventosDoDia15){  
            System.out.println(e.getDescricao()); 
        } 
    }
}
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java collections ou faça a sua própria pergunta.