Olá pessoal!
Poderia me ajudar com esse exercício em Java?
Sou iniciante em Java e estou tentando fazer basicamente um quadro de projetos ágeis, ou seja, tenho duas tarefas e elas precisam passar pelas seguintes fases: BACKLOG - TODO - DOING - DONE.
A saída deverá ser algo assim:
BACKLOG
Tarefa 1
Tarefa 2
TODO
DOING
DONE
BACKLOG
Tarefa 2
TODO
Tarefa 1
DOING
DONE
BACKLOG
Tarefa 2
TODO
DOING
Tarefa 1
DONE
BACKLOG
Tarefa 2
TODO
DOING
DONE
Tarefa 1
E o mesmo acontecer com a Tarefa 2
Implementei as seguintes classes:
Classe Quadro:
class Quadro {
static int BACKLOG = 0;
static int TODO = 1;
static int DOING = 2;
static int DONE = 3;
String labelFases[] = {"BACKLOG", "TODO", "DOING", "DONE"};
Fase fase[] = new Fase[4];
public Quadro() {
for (int i=0; i<4; i++)
fase[i] = new Fase();
}
public void adiciona (Cartao c) {
fase[BACKLOG].adiciona(c);
}
public void prepara (Cartao c) {
fase[BACKLOG].remove(c);
fase[TODO].adiciona(c);
}
public void inicia (Cartao c) {
fase[TODO].remove(c);
fase[DOING].adiciona(c);
}
public void encerra (Cartao c) {
fase[DOING].remove(c);
fase[DONE].adiciona(c);
}
public String toString() {
String saida = "";
for (int i=0; i<4; i++)
saida += labelFases[i] + "\n" + fase[i].toString() + "\n";
return saida;
}
}
Classe Fase:
class Fase{
Cartao cartao[] = new Cartao[99];
void adiciona(Cartao c){
cartao[Quadro.BACKLOG] = c;
}
void prepara(Cartao c){
cartao[Quadro.TODO] = c;
}
void inicia(Cartao c){
cartao[Quadro.DOING] = c;
}
void encerra(Cartao c){
cartao[Quadro.DONE] = c;
}
void remove(Cartao c){
cartao[-1] = c;
}
}
Classe Cartao:
class Cartao{
String nome;
public Cartao(String nome){
this.nome = nome;
}
}
Classe QuadroGeral:
public class QuadroGeral {
public static void main(String[] args) {
Quadro quadroGeral = new Quadro();
Cartao tarefa1 = new Cartao("Tarefa 1");
quadroGeral.adiciona(tarefa1);
Cartao tarefa2 = new Cartao("Tarefa 2");
quadroGeral.adiciona(tarefa2);
System.out.println(quadroGeral);
quadroGeral.prepara(tarefa1);
System.out.println(quadroGeral);
quadroGeral.inicia(tarefa1);
System.out.println(quadroGeral);
quadroGeral.encerra(tarefa1);
System.out.println(quadroGeral);
}
}
Estou tendo a seguinte saída:
BACKLOG
Fase@60e53b93
TODO
Fase@5e2de80c
DOING
Fase@1d44bcfa
DONE
Fase@266474c2
BACKLOG
Fase@60e53b93
TODO
Fase@5e2de80c
DOING
Fase@1d44bcfa
DONE
Fase@266474c2
BACKLOG
Fase@60e53b93
TODO
Fase@5e2de80c
DOING
Fase@1d44bcfa
DONE
Fase@266474c2
BACKLOG
Fase@60e53b93
TODO
Fase@5e2de80c
DOING
Fase@1d44bcfa
DONE
Fase@266474c2
Poderiam me ajudar?