Olá, estou usando o foreach
do java 8 e quando executo o programa só exibe o primeiro Aluno adicionado.
Segue o código
// foreach Java 8
javaColecoes.getAlunos().forEach(aluno -> {
System.out.println(aluno);
});
Segue a classe de teste.
package br.com.alura;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class TestaCursoComAluno {
/**
* @param args
*/
public static void main(String[] args) {
Curso javaColecoes = new Curso("Dominando as coleções do Java",
"Paulo Silveira");
javaColecoes.adiciona(new Aula("Trabalhando com Arrays", 21));
javaColecoes.adiciona(new Aula("Criando uma Aula", 20));
javaColecoes.adiciona(new Aula("Modelando Coleções", 24));
Collection<Curso> cursos = new HashSet<Curso>();
Aluno a1 = new Aluno("Eduardo", 123456);
Aluno a2 = new Aluno("Maxwell", 654321);
Aluno a3 = new Aluno("Teixeira", 789456);
javaColecoes.matricula(a1);
javaColecoes.matricula(a2);
javaColecoes.matricula(a3);
System.out.println("Todos os alunos matriculados");
// System.out.println(javaColecoes.getAlunos());
// Set<Aluno> alunoss = new HashSet<Aluno>();
// for (Aluno aluno : alunoss) {
// System.out.println(aluno);
// }
// foreach Java 8
javaColecoes.getAlunos().forEach(aluno -> {
System.out.println(aluno);
});
// foreach Java 5
// for (Curso curso : cursos) {
// System.out.println(curso);
// }
// acessando elementos de um Set antes do Java 5
// Set<Aluno> alunos = javaColecoes.getAlunos();
// Iterator<Aluno> iterador = alunos.iterator();
// acessando elementos de um Set antes do Java 5
// while (iterador.hasNext()) {
// System.out.println(iterador.next());
// }
}
}
E na classe TestaBuscaAlunosNoCurso, por mais que eu coloque uma matrícula que exista, o método lança a exceção. Segue o método buscaMatriculado.
public Aluno buscaMatriculado(long numero) {
if (!(matriculaParaAluno.containsKey(numero))) {
throw new NoSuchElementException("Matrícula " + numero + " não encontrada!");
}
return this.matriculaParaAluno.get(numero);
}
Alguém me dá um help. Agradeço desde já.