Java Hour Calculate getTimeStringOfHourBefore(int hour)

Here you can find the source of getTimeStringOfHourBefore(int hour)

Description

get Time String Of Hour Before

License

Apache License

Declaration

public static String getTimeStringOfHourBefore(int hour) 

Method Source Code

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

import java.text.SimpleDateFormat;

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

import java.util.HashMap;

import java.util.Map;

public class Main {
    private static final Map<String, ThreadLocal<SimpleDateFormat>> timestampFormatPool = new HashMap<String, ThreadLocal<SimpleDateFormat>>();
    private static final Object timestampFormatLock = new Object();
    private static String timestampPattern = "yyyy-MM-dd HH:mm:ss";

    public static String getTimeStringOfHourBefore(int hour) {
        final Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date());
        calendar.add(Calendar.HOUR, hour * -1);
        return getTimestampFormat().format(calendar.getTime());
    }//from w  w  w  . j  a va  2 s.  c  om

    private static SimpleDateFormat getTimestampFormat() {
        ThreadLocal<SimpleDateFormat> tl = timestampFormatPool.get(timestampPattern);
        if (null == tl) {
            synchronized (timestampFormatLock) {
                tl = timestampFormatPool.get(timestampPattern);
                if (null == tl) {
                    tl = new ThreadLocal<SimpleDateFormat>() {
                        @Override
                        protected synchronized SimpleDateFormat initialValue() {
                            return new SimpleDateFormat(timestampPattern);
                        }
                    };
                    timestampFormatPool.put(timestampPattern, tl);
                }
            }
        }
        return tl.get();
    }

    public static Date getTime(final int day) {
        return getTime(new Date(), day);
    }

    public static Date getTime(final Date date, final int day) {
        final Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + day);
        return calendar.getTime();
    }
}

Related

  1. getDiffHour(String startTime, String endTime)
  2. getDoubleValue(String hours)
  3. getExpiresDate(int hours)
  4. getTime(String dateStr, int hour, String timeZone)
  5. getTimestampFromDateHour2(String d)
  6. getTomorrowSixHours()
  7. getWeeHours()
  8. hoursMinsSecsFromMs(long ms)
  9. isHourMinute(String str)