A solução proposta não é funcional, pois da forma que colocou não efetua o cálculo.
Mesmo que eu coloque na forma correta “Integer valor = calendar.get(calendar.WEEK_OF_YEAR) - 1;”, que é um POG, traria um resultado errado, pois no dia “31/12/2011”, ele me retorna “1”, e, logo subtraindo “-1” seria “0”.
Abr
mauricionarcizo
se é 0 logo a semana será 52
douglaskd
mackson:
Caro mauricionarcizo.
A solução proposta não é funcional, pois da forma que colocou não efetua o cálculo.
Mesmo que eu coloque na forma correta “Integer valor = calendar.get(calendar.WEEK_OF_YEAR) - 1;”, que é um POG, traria um resultado errado, pois no dia “31/12/2011”, ele me retorna “1”, e, logo subtraindo “-1” seria “0”.
Abr
ele esta certo…
a semana do java começa em 0
a do oracle começa em 1
mauricionarcizo
estranho o oracle retornar semana 53, os anos não tem 52 semanas?
douglaskd
bem estranho…o ano tem 52 semanas e 1 dia
mackson
Caro douglaskd,
De fato são 52 semanas e 1 dia. Estranho o Oracle retornar 53. Mais estranho ainda é o java retornar uma semana a mais!
pmlm
O ano não tem 52 semanas exactas. Para acertar, de vez em quando tem de haver um ano com 53 semanas.