Nessa aula, o meu retorno é o seguinte;
[Curso: Dominando as coleções do Java, tempo total: 0, aulas: []] [[Aula: Trabalhando com Arraylist, 21], [Aula: Criando uma aula, 20], [Aula: Modelando com coleções, 24]] [[Aula: Criando uma aula, 20], [Aula: Modelando com coleções, 24], [Aula: Trabalhando com Arraylist, 21]]
Não consigo detectar o erro, alguém poderia me ajudar.
public class Curso {
private String nome;
private String instrutor;
private List<Aula> aulas = new LinkedList<Aula>();
public Curso(String nome, String instrutor) {
super();
this.nome = nome;
this.instrutor = instrutor;
}
public String getNome() {
return nome;
}
public String getInstrutor() {
return instrutor;
}
public List<Aula> getAulas() {
return Collections.unmodifiableList(aulas);
}
public void adiciona(Aula aula) {
this.aulas.add(aula);
}
public int getTempoTotal() {
return this.aulas.stream().mapToInt(Aula::getTempo).sum();
}
@Override
public String toString() {
return "[Curso: " + this.getNome() + ", tempo total: " + this.getTempoTotal()
+ ", aulas: " + this.aulas + "]";
}
}
package br.com.alura;
import java.util.ArrayList; import java.util.Collections; import java.util.List;
public class TestaCurso2 {
public static void main(String[] args) {
Curso javaColecoes = new Curso("Dominando as coleções do Java", "Ederson Medeiros");
System.out.println(javaColecoes);
javaColecoes.adiciona(new Aula("Trabalhando com Arraylist", 21));
javaColecoes.adiciona(new Aula("Criando uma aula", 20));
javaColecoes.adiciona(new Aula("Modelando com coleções", 24));
List<Aula> aulasImutaveis = javaColecoes.getAulas();
System.out.println(aulasImutaveis);
List<Aula> aulas = new ArrayList<>(aulasImutaveis);
Collections.sort(aulas);
System.out.println(aulas);
System.out.println(javaColecoes.getTempoTotal());
}
}