public class DiasSemana {
public static final int DOMINGO = 1;
public static final int SEGUNDA = 2;
public static final int TERCA = 3;
public static final int QUARTA = 4;
public static final int QUINTA = 5;
public static final int SEXTA = 6;
public static final int SABADO = 7;
private DiasSemana() {}
}
if (diaFolga == DiasSemana.DOMINGO) { ... }
public boolean inDiasFolga(int dia, int[] folgas) {
for (int i = 0; i < fogas.length; i++) {
if (folgas[i] == dia) {
return true;
}
}
return false;
}
if (inDiasFolga(DiasSemana.SABADO, variosDiasFolga)) {
// sabado esta no dia de folga
}
E assim por diante. Ha estruturas de dados um pouco mais complexas que ficam mais parecidas com enums, como o pattern TypeSafeEnum. Mas, muitas vezes, ter eles implementados eh muito mais uma questao de deixar o sistema mais “OO friendly” do que qualquer outra coisa.
[code]
public class DiasSemana {
public static final int DOMINGO = 1;
public static final int SEGUNDA = 2;
public static final int TERCA = 3;
public static final int QUARTA = 4;
public static final int QUINTA = 5;
public static final int SEXTA = 6;
public static final int SABADO = 7;
private DiasSemana() {}
}
[/code][/quote]
Melhor ainda, use o pattern TypeSafe Enum
[code]public class DiaSemana implements java.io.Serializable {
public static final DiaSemana DOMINGO = new DiaSemana(1);
public static final DiaSemana SEGUNDA = new DiaSemana(2);
public static final DiaSemana TERCA = new DiaSemana(3);
…
private DiaSemana(int dia) {
this.dia = dia;
}
private int dia;
public int getDia() { return dia; }
}[/code]
Assim, nao tem como errar e botar um int qualquer no lugar da constante
[quote=“cv”]Melhor ainda, use o pattern TypeSafe Enum
[code]public class DiaSemana implements java.io.Serializable {
public static final DiaSemana DOMINGO = new DiaSemana(1);
public static final DiaSemana SEGUNDA = new DiaSemana(2);
public static final DiaSemana TERCA = new DiaSemana(3);
…
private DiaSemana(int dia) {
this.dia = dia;
}
private int dia;
public int getDia() { return dia; }
}[/code]
Assim, nao tem como errar e botar um int qualquer no lugar da constante ;)[/quote]