Java Date to Year getYear(final Date date)

Here you can find the source of getYear(final Date date)

Description

Get the year by given date.

License

Apache License

Parameter

Parameter Description
date date to be handled.

Return

the year by given date.

Declaration

public static int getYear(final Date date) 

Method Source Code

//package com.java2s;
//License from project: Apache License 

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class Main {
    private static final ThreadLocal<Calendar> calendarCache = new ThreadLocal<Calendar>();

    /**//from   w w w  .  j  av  a2  s  .  c om
     * Get the year by given date.
     * 
     * @param date date to be handled.
     * @return the year by given date.
     */
    public static int getYear(final Date date) {

        return getNumberOfGranularity(Calendar.YEAR, date);
    }

    private static int getNumberOfGranularity(final int granularity, final Date date) {

        Calendar calendar = buildCalendar(date);
        return calendar.get(granularity);
    }

    /**
     * Gets a calendar using the default time zone and locale. The Calendar
     * returned is based on the current time in the default time zone with the
     * default locale.
     * 
     * @return a Calendar object.
     */
    private static Calendar buildCalendar() {

        Calendar calendar = calendarCache.get();
        if (calendar == null) {
            calendar = GregorianCalendar.getInstance();
            calendarCache.set(calendar);
        }
        return calendar;
    }

    /**
     * Gets a calendar using the default time zone and locale. The Calendar
     * returned is based on the given time in the default time zone with the
     * default locale.
     * 
     * @return a Calendar object use given date.
     */
    private static Calendar buildCalendar(final Date date) {

        Calendar calendar = buildCalendar();
        calendar.setTime(date);
        return calendar;
    }
}

Related

  1. getYear(Date date)
  2. getYear(Date dateParam)
  3. getYear(Date start)
  4. getYear(final Date date)
  5. getYear(final Date date)
  6. getYear(java.util.Date date)
  7. getYear(java.util.Date today)
  8. getYear(String sdate)
  9. getYear(String strDate)