Boa noite pessoal,
Sou novo por aqui e em java também.
Estou desenvolvendo um programa de cálculo salarial e nele preciso saber quantos domingos um determinado mês tem, pois vou somar os domingos de um mês com os feriados desse mês para fazer o cálculo de dsr/h.e (Descanso Semanal Remunerado/Hora Extra).
Então, basicamente o algoritmo seria assim:
1 - Passar MES (Exemplo: Strings “Janeiro”, “Fevereiro”,“Março”, etc…);
2 - Retornar a quantidade de domingos desse mês (Exemplo: 3, 4, etc…);
3 - Somar os domingos com os feriados do mês (4 + 1) e farei o cálculo de dsr/h.e. que já tenho pronto.
Já sei que pra isso vou utilizar a:
Import java.util.*;
Conto com a colaboração de vocês e desde já agradeço.
Não costumo dar soluções prontas, mas veja só.
[code]/**
-
Conta a quantidade de domingos de um mês.
-
-
@param mes Mês desejado (1 janeiro, 2 fevereiro, …, 12 dezembro)
-
@param ano Ano desejado
-
@return Quantidade de domingos
*/
public static int quantDomingos( int mes, int ano ) {
int quantDomingos = 0;
// cria um calendário na data 01/mes/ano
Calendar c = new GregorianCalendar( ano, mes - 1, 1 );
do {
// o dia da semana é domingo?
if ( c.get( Calendar.DAY_OF_WEEK ) == Calendar.SUNDAY ) {
quantDomingos++;
}
// incrementa um dia no calendário
c.roll( Calendar.DAY_OF_MONTH, true );
// enquanto o dia do mês atual for diferente de 1
} while ( c.get( Calendar.DAY_OF_MONTH ) != 1 );
return quantDomingos;
}[/code]
O método acima retornará a quantidade de domingos de um mês de um ano.
Em relação aos feriados fica complicado, pois alguns feriados não tem dias fixos no calendário, mas seguem regras para serem “calculados”.
[]'s

Muito obrigado davidbuzatto.
O seu código me ajudou muito.
Como em cada cidade os feriados são diferentes, pedirei ao usuário do programa que conte somente os feriados que não caem em domingo.
Sua contribuição foi fundamental para a entrega deste programa no prazo ao cliente.
Um grande abraço.