1. 对Calendar的优化
Calendar是线程不安全的,不能放在全局变量中使用,但是每次都要new一个Calendar对象,可能会影响性能。
public class Test{
//北京时间
protected final static TimeZone DEFAULT_TIMEZONE = TimeZone.getTimeZone("GMT+08:00");
//中国大陆
protected final static Locale DEFAULT_LOCALE = Locale.SIMPLIFIED_CHINESE;
/**
* 它是线程不安全的,不能直接使用,但是使用clone可以更高效的创建Calendar对象
*/
protected static final Calendar CALENDAR = new GregorianCalendar(DEFAULT_TIMEZONE, DEFAULT_LOCALE);
public static void main(String[] args) {
Calendar c1 = (Calendar) CALENDAR.clone();
c1.setTime(new Date());
Calendar c2 = (Calendar) CALENDAR.clone();
c2.setTime(new Date());
c2.add(Calendar.DAY_OF_MONTH,1);
boolean sameDay = DateUtils.isSameDay(c1, c2);
System.out.println(sameDay);
}<