Jump to content
op_h2tuga

Apresentar a próxima hora

Recommended Posts

op_h2tuga

Boas,

Estou com um problema tenho um horario com uma hora de inicio e uma hora de fim,  as horas estão armazenadas em um Vector(não posso usar outra class sem ser essa) e tenho que fazer um metodo em que recebe um hora(por exemplo a Hora Actual) e vai ter que me retornar a hora seguinte que se encontra no horário, o meu problema é que não estou mesmo a ver como isto se faz alguém me podia dar uma ajudinha?

Cumprimentos

Share this post


Link to post
Share on other sites
op_h2tuga

Pelo que eu entendi do LasteIndexOf é que ele pesquisa só para traz o que continua a não me ajudar porque as horas também podem ter que ser inseridas para posições da frente, se souberes de alguma maneira, agradecia.

Cumprimentos

Share this post


Link to post
Share on other sites
Diutsu

O LastIndexOf serve para encontrares o index da hora inserida (se só fizeres uma vez, é a ultima ocorencia dessa hora, se não houver repetições não há prob), e a partir daí encontrares a hora seguinte (index++);


XX SINFO - Semana Informática

Share this post


Link to post
Share on other sites
op_h2tuga

O LastIndexOf serve para encontrares o index da hora inserida (se só fizeres uma vez, é a ultima ocorencia dessa hora, se não houver repetições não há prob), e a partir daí encontrares a hora seguinte (index++);

entao se tiver o seguinte horario:

13:00  14:00

15:00  16:00

e se inserir a hora 13:30 ele depois fica assim?

13:00 13:30

14:00 15:00

16:00

Share this post


Link to post
Share on other sites
Diutsu

Se o horário for (considerando minutos):

[12:00] [13:00] [14:00] [15:00] [16:00]

se inserires 13.30 ele não encontra a hora no horário, vai dar erro.

se inserires 13:00 ele devolve 14:00, que é a hora seguinte no horário.


XX SINFO - Semana Informática

Share this post


Link to post
Share on other sites
op_h2tuga

Se o horário for (considerando minutos):

[12:00] [13:00] [14:00] [15:00] [16:00]

se inserires 13.30 ele não encontra a hora no horário, vai dar erro.

se inserires 13:00 ele devolve 14:00, que é a hora seguinte no horário.

Pois mas o que eu queria é que ele inserisse no sitio correcto, nao sabes uma maneira?

Cumprimentos

Share this post


Link to post
Share on other sites
Diutsu

É mais dificil, porque tens primeiro de percorrer o vector elemento a elemento (ou de uma maneira + inteligente tanto faz), esperando que o vector esteja ordenado (pela definição do problema, deve estar, no entanto pela definição de Vector não é uma estrutura ordenada), até encontrares o valor que estás à procura, ou superior, quando o encontrares usas:

http://download.oracle.com/javase/6/docs/api/java/util/Vector.html#insertElementAt%28E,%20int%29

para colocar o novo elemento na posição certa.


XX SINFO - Semana Informática

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.