Dúvida em relação ao ListaTarefa do Exercicio de Pesquisa de Set
Nos métodos marcarTarefaPendente e marcarTarefaConcluida da classe "ListaTarefas", ambos os métodos parecem fazer a mesma coisa ou posso estar enganado.
No caso, eu o parâmetro é false e não true como está lá. hehe Vou corrigir agora.
- No método
marcarTarefaConcluidafiz da forma mais simples, sem nenhuma verificação:
public void marcarTarefaConcluida(String descricao) {
for (Tarefa t : tarefasSet) {
if (t.getDescricao().equalsIgnoreCase(descricao)) {
t.setConcluida(true);
}
}
}
- Já no método
marcarTarefaPendentecoloquei uma verificaçãoif (tarefaParaMarcarComoPendente != null)para dar uma ideia de como podemos deixar o nosso código mais seguro. Porém só esqueci do principal, que é marcar a tarefa comofalse. - Aproveitei que você falou sobre este método e coloquei uma outra verificação
(tarefaParaMarcarComoPendente.isConcluida()). - O método só irá marcar a atividade como pendente se existir na lista e também se a tarefa está como concluída. Caso contrário, não precisa marcar como pendente, porque ou a tarefa não existe ou a tarefa já está pendente.
public void marcarTarefaPendente(String descricao) {
Tarefa tarefaParaMarcarComoPendente = null;
for (Tarefa t : tarefasSet) {
if (t.getDescricao().equalsIgnoreCase(descricao)) {
tarefaParaMarcarComoPendente = t;
break;
}
}
if (tarefaParaMarcarComoPendente != null) {
if(tarefaParaMarcarComoPendente.isConcluida()) {
tarefaParaMarcarComoPendente.setConcluida(false);
}
} else {
System.out.println("Tarefa não encontrada na lista.");
}
}
Era essa sua dúvida? Agradeço demais o feedback e caso encontre alguma inconsistência, pode ir falando que vamos corrigido juntos! (:
Sim, muito obrigado!
No exercícios de Ordenação em Set de Cadastro de Produtos na parte de demonstração onde está exibindo todos os produstos no cadastro, está exibindo da mesma forma que produtos ordenados por nome. Acredito que deveria estar assim.
// Exibindo todos os produtos no cadastro
System.out.println(cadastroProdutos.produtoSet);
No exercícios de Ordenação em Set de Cadastro de Produtos na parte de demonstração onde está exibindo todos os produstos no cadastro, está exibindo da mesma forma que produtos ordenados por nome. Acredito que deveria estar assim.
// Exibindo todos os produtos no cadastro System.out.println(cadastroProdutos.produtoSet);
done!