Skip to main content

Exercice Date

Ecrire un programme Java pour créer un objet Date en utilisant la classe Calendar

import java.util.*;
public class Exercise1 {
    public static void main(String[] args)
    {
     int year = 2016;
     int month = 0; // January
     int date = 1;

     Calendar cal = Calendar.getInstance();
     // Sets the given calendar field value and the time value
     // (millisecond offset from the Epoch) of this Calendar undefined.
     cal.clear();
     System.out.println();
     cal.set(Calendar.YEAR, year);
     cal.set(Calendar.MONTH, month);
     cal.set(Calendar.DATE, date);

     System.out.println(cal.getTime());
     System.out.println();
	 }
}

2. Écrire un programme Java pour obtenir et afficher les informations (année, mois, jour, heure, minute) d'un calendrier par défaut

import java.util.*;
public class Exercise2 {
 public static void main(String[] args)
    {
       // Create a default calendar
        Calendar cal = Calendar.getInstance();
       // Get and display information of current date from the calendar:
	    System.out.println();
        System.out.println("Year: " + cal.get(Calendar.YEAR));
        System.out.println("Month: " + cal.get(Calendar.MONTH));
        System.out.println("Day: " + cal.get(Calendar.DATE));
        System.out.println("Hour: " + cal.get(Calendar.HOUR));
        System.out.println("Minute: " + cal.get(Calendar.MINUTE));
	    System.out.println();
    }
}

3. Écrivez un programme Java pour obtenir la valeur maximale de l'année, du mois, de la semaine et de la date à partir de la date actuelle d'un calendrier par défaut.

import java.util.*;
public class Exercise3 {
public static void main(String[] args)
    {
     // Create a default calendar
        Calendar cal = Calendar.getInstance();
		System.out.println();
		System.out.println("\nCurrent Date and Time:" + cal.getTime());		
		int actualMaxYear = cal.getActualMaximum(Calendar.YEAR);
		int actualMaxMonth = cal.getActualMaximum(Calendar.MONTH);
		int actualMaxWeek = cal.getActualMaximum(Calendar.WEEK_OF_YEAR);
		int actualMaxDate = cal.getActualMaximum(Calendar.DATE);
		
		System.out.println("Actual Maximum Year: "+actualMaxYear);
		System.out.println("Actual Maximum Month: "+actualMaxMonth);
		System.out.println("Actual Maximum Week of Year: "+actualMaxWeek);
		System.out.println("Actual Maximum Date: "+actualMaxDate+"\n");
		System.out.println();
		
	  }
}

4. Écrivez un programme Java pour obtenir la valeur minimale de l'année, du mois, de la semaine et de la date à partir de la date actuelle d'un calendrier par défaut.

import java.util.*;
public class Exercise4 {
 public static void main(String[] args)
    {
     // Create a default calendar
        Calendar cal = Calendar.getInstance();
		System.out.println();
		System.out.println("\nCurrent Date and Time:" + cal.getTime());		
		int actualMaxYear = cal.getActualMinimum(Calendar.YEAR);
		int actualMaxMonth = cal.getActualMinimum(Calendar.MONTH);
		int actualMaxWeek = cal.getActualMinimum(Calendar.WEEK_OF_YEAR);
		int actualMaxDate = cal.getActualMinimum(Calendar.DATE);
		
		System.out.println("Actual Minimum Year: "+actualMaxYear);
		System.out.println("Actual Minimum Month: "+actualMaxMonth);
		System.out.println("Actual Minimum Week of Year: "+actualMaxWeek);
		System.out.println("Actual Minimum Date: "+actualMaxDate+"\n");
		System.out.println();		
	  }
}

5. Écrivez un programme Java pour obtenir l'heure actuelle à New York.

import java.util.*;
public class Exercise5 {
   public static void main(String[] args)
    {
     Calendar calNewYork = Calendar.getInstance();
     calNewYork.setTimeZone(TimeZone.getTimeZone("America/New_York"));
	    System.out.println(); 
      System.out.println("Time in New York: " + calNewYork.get(Calendar.HOUR_OF_DAY) + ":"
        + calNewYork.get(Calendar.MINUTE)+":"+calNewYork.get(Calendar.SECOND));
		   System.out.println(); 
    }
}

6. Écrivez un programme Java pour obtenir la date et l'heure complètes actuelles

import java.util.*;
public class Exercise6 {
   public static void main(String[] args)
    {
   Calendar now = Calendar.getInstance();
    System.out.println();
    System.out.println("Current full date and time is : " + (now.get(Calendar.MONTH) + 1) + "-"
        + now.get(Calendar.DATE) + "-" + now.get(Calendar.YEAR) + " "
        + now.get(Calendar.HOUR_OF_DAY) + ":" + now.get(Calendar.MINUTE) + ":"
        + now.get(Calendar.SECOND) + "." + now.get(Calendar.MILLISECOND));
	System.out.println();
    }
}

7. Écrivez un programme Java pour obtenir le dernier jour du mois en cours.

import java.util.*;
public class Exercise7 {
   public static void main(String[] args)
    {
    //Gets a calendar using the default time zone and locale.
        Calendar calendar = Calendar.getInstance();
   System.out.println();     
   System.out.println(calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
   System.out.println(); 
   }
}

14. Écrivez un programme Java pour obtenir l'heure locale actuelle.

import java.time.*;
public class Exercise14 {
   public static void main(String[] args)
    {
        LocalTime time = LocalTime.now();
        System.out.println();
        // in hour, minutes, seconds, nano seconds
        System.out.println("Local time now : " + time);
        System.out.println();
    }
}

15. Écrivez un programme Java pour ajouter quelques heures à l'heure actuelle.

import java.time.*;
public class Exercise15 {
   public static void main(String[] args)
    {
      LocalTime time = LocalTime.now(); 
      // adding four hours
      LocalTime newTime = time.plusHours(4);
      System.out.println();
      System.out.println("Time after 2 hours : " + newTime);
      System.out.println();
    }
}

16. Écrivez un programme Java pour obtenir une date après 2 semaines.

import java.util.*;
public class Exercise16 {
   public static void main(String[] args)
    {
     //two weeks
     int noOfDays = 14; 
     Calendar cal = Calendar.getInstance();
     Date cdate = cal.getTime();
     cal.add(Calendar.DAY_OF_YEAR, noOfDays);
     Date date = cal.getTime();
     System.out.println("\nCurrent Date: " + cdate+"\n");  
     System.out.println("Day after two weeks: " + date+"\n");  	
    }
}

17. Écrivez un programme Java pour obtenir une date avant et après 1 an par rapport à la date actuelle.

import java.util.*;
public class Exercise17 {
   public static void main(String[] args)
    {
      Calendar cal = Calendar.getInstance();
      Date cdate = cal.getTime();
      // get next year
      cal.add(Calendar.YEAR, 1); 
      Date nyear = cal.getTime();
      //get previous year
      cal.add(Calendar.YEAR, -2); 
      Date pyear = cal.getTime();
      System.out.println("\nCurrent Date : " + cdate);
      System.out.println("\nDate before 1 year : " + pyear);
      System.out.println("\nDate after 1 year  : " + nyear+"\n");  	
    }
}

18. Écrivez un programme Java pour vérifier qu'une année est bissextile ou non.

public class Exercise18 {
   public static void main(String[] args)
    {
     //year to leap year or not
       int year = 2016;
       System.out.println();        
       if((year % 400 == 0) || ((year % 4 == 0) && (year % 100 != 0)))
               System.out.println("Year " + year + " is a leap year");
       else
               System.out.println("Year " + year + " is not a leap year");
               System.out.println();
    }
}

19. Écrivez un programme Java pour obtenir l'année et les mois entre deux dates.

import java.time.*;
public class Exercise19 {
   public static void main(String[] args)
    {
     LocalDate today = LocalDate.now();    
     LocalDate userday = LocalDate.of(2015, Month.MAY, 15); 
     Period diff = Period.between(userday, today); 
     System.out.println("\nDifference between "+ userday +" and "+ today +": " 
     + diff.getYears() +" Year(s) and "+ diff.getMonths() +" Month()s\n");
    }
}

20. Écrivez un programme Java pour obtenir l'horodatage actuel.

import java.time.*;
public class Exercise20 {
   public static void main(String[] args)
    {
    Instant timestamp = Instant.now(); 
    System.out.println("\nCurrent Timestamp: " + timestamp+"\n"); 
    }
}

21. Écrivez un programme Java pour obtenir l'heure actuelle dans tous les fuseaux horaires disponibles.

import java.time.*;
public class Exercise21 {
   public static void main(String[] args)
    {
    ZoneId.SHORT_IDS.keySet().
    stream().forEach( 
    zoneKey ->System.out.println(" "+ ZoneId.of( ZoneId.SHORT_IDS.get( zoneKey ) ) +": "+ LocalDateTime.now(ZoneId.of(ZoneId.SHORT_IDS.get( zoneKey ) ) ) ) );
    }
}

22. Écrivez un programme Java pour obtenir les dates 10 jours avant et après aujourd'hui.

import java.time.*;
public class Exercise22 {
   public static void main(String[] args)
    {
     LocalDate today = LocalDate.now(); 
     System.out.println("\nCurrent Date: "+today);
     System.out.println("10 days before today will be "+today.plusDays(-10));
     System.out.println("10 days after today will be "+today.plusDays(10)+"\n");
   }
}

23. Écrivez un programme Java pour obtenir les mois restants dans l'année.

import java.time.*;
import java.time.temporal.TemporalAdjusters;
public class Exercise23 {
   public static void main(String[] args)
    {
     LocalDate today = LocalDate.now(); 
     LocalDate lastDayOfYear = today.with(TemporalAdjusters.lastDayOfYear());
     Period period = today.until(lastDayOfYear);
     System.out.println();
     System.out.println("Months remaining in the year: "+period.getMonths());	
     System.out.println();
   }
}

24. Écrivez un programme Java pour afficher les dates dans les formats suivants.

LocalDate=2016-09-16
16::Sep::2016
 LocalDateTime=2016-09-16T11:46:01.455
16::Sep::2016 11::46::01
 Instant=2016-09-16T06:16:01.456Z
Default format after parsing = 2014-04-27T21:39:48

import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class DateParseFormatExercise24 {

	public static void main(String[] args) {
		
		//Format examples
		LocalDate date = LocalDate.now();
		//default format
		System.out.println("\nDefault format of LocalDate="+date);
		//specific format
		System.out.println(date.format(DateTimeFormatter.ofPattern("d::MMM::uuuu")));

		LocalDateTime dateTime = LocalDateTime.now();
		//default format
		System.out.println("Default format of LocalDateTime="+dateTime);
		//specific format
		System.out.println(dateTime.format(DateTimeFormatter.ofPattern("d::MMM::uuuu HH::mm::ss")));
   		Instant timestamp = Instant.now();
		//default format
		System.out.println("Default format of Instant="+timestamp);
		
		//Parse examples
		LocalDateTime dt = LocalDateTime.parse("27::Apr::2014 21::39::48",
				DateTimeFormatter.ofPattern("d::MMM::uuuu HH::mm::ss"));
		System.out.println("Default format after parsing = "+dt+"\n");
	}

}

28. Écrivez un programme Java pour afficher les informations de date et d'heure avant quelques heures et minutes à partir de la date et de l'heure actuelles

import java.time.*;

public class DateParseFormatExample28 {

	public static void main(String[] args) {
	
    // Before 7 houres and 30 minutes
     LocalDateTime dateTime = LocalDateTime.now().minusHours(5).minusMinutes(30);
      System.out.println("\nCurrent Date and Time:  " + LocalDateTime.now());  
      System.out.println("Before 7 hours and 30 minutes: " + dateTime+"\n");  
	}

}

29. Écrivez un programme Java pour convertir une chaîne en date.

import java.time.*;
import java.util.*;
import java.time.format.DateTimeFormatter;

public class MainEx29 {
  public static void main(String[] args) {
   String string = "May 1, 2016";
   DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMMM d, yyyy", Locale.ENGLISH);
   LocalDate date = LocalDate.parse(string, formatter);
   System.out.println();
   System.out.println(date);
   System.out.println();
  }
}