Como eu faço operações de subtração e soma com capos de DATA/HORA?
Essa sua pergunta esta muito vaga. Devia dar um exemplo do problema. Mas para fazer contas com data e hora eu pego o long que representa a data com o método getTime() da classe java.util.Date e tento por ali.
Date d1 = new Date(System.currentTimeMillis()); //Data e hora atual
Date d2 = new GregorianCalendar(2003, 03, 21).getTime; //uma data no passado
Date d3 = new Date(d1.getTime() - d2.getTime()); //Diferença
:-o
o método Date() é “deprecated”.
o ideial para pegar data é usando o SimpleDateFormat com uma sintaxe parecida como:
SimpleDateFormat df = new SimpleDateFormat(“dd/mm/yyyy”);
A classe Calendar (normalmente usada através de sua derivada GregorianCalendar) fornece dois métodos para isso: add e roll. O método add é o mais comum fornecendo o comportamento esperado. Já o método roll é circular (volta para o mesmo ano). Dêem uma espiada na API, please.