Exemplo de Calendar.add e Calendar.roll

 
 

import java.text.DateFormat;

import java.util.Date;

import java.util.Calendar;

import java.util.GregorianCalendar;

import java.util.Locale;

 
 

public class Teste {

public static void main(String[] args) {

Calendar c = GregorianCalendar.getInstance();

// seta a data

/*

UM POUQUINHO CONFUSO…

É importantissimo observarmos que MONTH = 8 para o Java é SETEMBRO.

Isso ocorre porque JANEIRO é MONTH = 0.

*/

c.set(Calendar.DAY_OF_MONTH, 20);

c.set(Calendar.MONTH, 8);

c.set(Calendar.YEAR, 2010);

 
 

// PLUS: define Locale e DateFormat

Locale locBr = new Locale(“pt”, “BR”);

DateFormat df = DateFormat.getDateInstance(DateFormat.FULL, locBr);

 
 

// mostra data sem realizar nenhuma operação

System.out.println(df.format(c.getTime()) + ” – ” + c.getTime()); // # 1

 
 

// realiza operação

// roll: acrescenta 20 dias à data 20/09/2010 não permitindo a mudança da parte maior

// em relação ao dia. No caso é o mês

c.roll(Calendar.DAY_OF_MONTH,20);

 
 

// mostra

System.out.println(df.format(c.getTime())+ ” – ” + c.getTime()); // # 2

 
 

// realiza operação

// add: acrescenta 40 dias à data 10/09/2010 permitindo a mudança da parte maior

// em relação ao dia. No caso é o mês.

c.add(Calendar.DAY_OF_MONTH, 40);

 
 

// mostra

System.out.println(df.format(c.getTime())+ ” – ” + c.getTime()); // # 3

}

}

 
 

Output:

Segunda-feira, 20 de Setembro de 2010 – Mon Sep 20 17:25:47 BRT 2010 // # 1

Sexta-feira, 10 de Setembro de 2010 – Fri Sep 10 17:25:47 BRT 2010 // # 2

Quarta-feira, 20 de Outubro de 2010 – Wed Oct 20 17:25:47 BRST 2010 // # 3

 
 

Anúncios
Esta entrada foi publicada em java.util.* e java.text.* com as etiquetas , , , . ligação permanente.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s