Dúvida com teste entre tipos Time [ Resolvido]

Pessoal, estou tentando comparar se ha interseção entre dois horários , tipo Time
com os métodos after e before , da seguinte maneira:

[code]public boolean haIntersecao(GradeHorarios outro) {

if( this.horafim.after(outro.horainicio) && this.horainicio.before(outro.horafim) && (this.diadasemana == outro.diadasemana) )
	return true;

if ( outro.horafim.after(this.horainicio) && outro.horainicio.before(this.horafim) && (this.diadasemana==outro.diadasemana) )
	return true;
	
return false;

}
[/code]
onde GradeHorarios tem as propriedades:

private Time horainicio; private Time horafim;

Mas nunca acusa interseção. Alguem pode me dar uma dica pq não funfa esse teste ?

Agradeço qquer ajuda
[]´s a todos

Olá,

A melhor forma de fazer esse tipo de comparação que voce quer é usando objetos Date com os métodos before() e after() , ou então usando Strings usando o compareTO.

Falou.

Time você quer dizer java.sql.Time? Caso afirmativo olhe essa classe. Ela retorna true, pois t1 está entre t0 e t2.

[code]public static void main(String[] args) {
Time t0 = new Time(0);
Time t1 = new Time(1);
Time t2 = new Time(2);

System.out.println(t0.before(t1) && t2.after(t1));

}[/code]

Aparentemente seu código deveria funcionar. Para fazer um teste remova a comparação com dias da semana, creio que pode ser alí o erro. E também aconselho um debug para entender o que está retornando na comparação.

Valeu as dicas pessoal.

Garcia-jj , realmente era isso. Eu estava comparando o diadasemana de maneira errada.

Vlws pessoal

Grande abraço.