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

Pq nao entra dentro da lista com este for ??

É o seguinte quero navegar dentro da lista de disciplinas adicionadas por arquivo e lá verificar se existe tal disciplina e adicionar turmas com metodo adicionarTurma, OBS: o metodo adicionaTurma se encontra na classe Sisaloca e na classe Disciplina, vjam

mas nao tá dando certo.. ajudaa aq ..

package RoteiroApartirDo09;

import java.util.LinkedList; 
import java.util.List;

public class Disciplina{

    private String nome;    
    private String codigo;     
    List<Turma>turmass;          

    public Disciplina(String nome,String codigo){ 
        this.nome = nome;    
        this.codigo = codigo; 
        this.turmass = new LinkedList<Turma>();   
    } 

    public void adicionarTurma(int numero) throws TurmaJaExisteException { 
        for(Turma t: this.turmass){       
            if (t.getNumero() == numero){   
                throw new TurmaJaExisteException("Já existe a turma de número: "+numero);
            }   
        }  
        Turma t = new Turma(this, numero);  
        this.turmass.add(t);  
    }  
    public void removerTurmas(int numero){  
        for(Turma t: this.turmass){ 
            if(t.getNumero()== numero){  
                this.turmass.remove(numero); 
                break; 
            }   
        }  
    } 

    public String getNome() { 
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
    public String getCodigo() {
        return codigo; 
    } 
    public void setCodigo(String codigo) { 
        this.codigo = codigo; 
    } 
    public List<Turma> getTurmass() { 
        return turmass; 
    } 
    public void setTurmass(List<Turma> turmass) {
        this.turmass = turmass;
    }
    public String getDescricao(){  
        return "Nome disciplina: "+this.nome+" Codigo disciplina: "+this.codigo;
    }
}



package RoteiroApartirDo09;

import java.util.LinkedList;

public class Turma{

        int numero;   
        Disciplina disciplina; 
        String codigoDisciplina;
        int numTurma;
        LinkedList<Turma>turmass; 

        public Turma(String codigoDisciplina, int numTurma) { 
            this.codigoDisciplina = codigoDisciplina; 
            this.numTurma = numTurma;
        }
        public Turma(Disciplina disciplina,int numero){ 
            this.disciplina = disciplina;  
            this.numero = numero; 
        } 
        public int getNumero(){ 
            return numero;
        }
        public void setNumero(int num){ 
            this.numero = num;
        }
        public Disciplina getDisciplina(){
            return disciplina;
        }
        public void setDisciplina(Disciplina disciplina){
            this.disciplina = disciplina;
        }
        public String getCodigoDisciplina(){
            return codigoDisciplina;
        }
        public void setCodigoDisciplina(String cod){ 
            this.codigoDisciplina = cod;
        } 

        public int getNumTurma() { 
            return numTurma;   
        }
        public void setNumTurma(int numTurma){
            this.numTurma = numTurma;  
        } 
        public String getDescricao(){ 
            return "Codigo disciplina "+codigoDisciplina+" Numero da turma "+numTurma;  
        } 
}

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;

public class Sisaloca implements SisalocaIF{ 

    private List<Professor>professores;    
    private List<Aluno>alunos;     
    private List<Disciplina>disciplinas;   
    private List<Turma>turmas  = new ArrayList<Turma>(); 

    public Sisaloca() { 
        professores = new LinkedList <Professor>();
        alunos = new LinkedList <Aluno>();
        disciplinas = new LinkedList<Disciplina>();
    }
        public void adicionaDisciplina(String nome, String codigo)throws DisciplinaJaExisteException {
        for(Disciplina d: this.disciplinas){  
            if(d.getNome().equals(nome) && d.getCodigo().equals(codigo)){
                throw new DisciplinaJaExisteException("Disciplina ja existe no sistema");
            } 
        } 
        Disciplina novaDisciplina = new Disciplina(nome,codigo);
        this.disciplinas.add(novaDisciplina); 
    } 

    public Disciplina pesquisaDisciplina(String codigoDisciplina)throws DisciplinaInexistenteException { 
        for(Disciplina d: this.disciplinas){   
            if(d.getCodigo().equals(codigoDisciplina)){   
                return d;  // retorna um getDescricao Disciplina
            }   
        }  
        throw new DisciplinaInexistenteException("Disciplina nao existe no sistema "+codigoDisciplina); 
    }   
    public void adicionaTurma(String codigoDisciplina, int numTurma)throws DisciplinaInexistenteException, DisciplinaJaExisteException,TurmaJaExisteException {
        Disciplina d = (Disciplina) this.disciplinas;  // problema aq,  adicionaTurma
        for(int i = 0; i < this.disciplinas.size();i++){  
            if(d.getCodigo().equals(codigoDisciplina)){ 
                d.adicionarTurma(numTurma);   
            }     
        }  

    } 
}
  • tenta ver no debug se ela não entra na sua lista por estar nula ou não inicializada.

    paulo victor   28 de mai de 2014
  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!

2 respostas

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