Here you can find the source of getTwoYearsBefore(int date)
public static int getTwoYearsBefore(int date)
//package com.java2s; //License from project: Open Source License import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Main { private static SimpleDateFormat intSDF = new SimpleDateFormat("yyyyMMdd"); private static final SimpleDateFormat defaultFormater = new SimpleDateFormat("yyyyMMdd"); private static final SimpleDateFormat customizedFormater = new SimpleDateFormat("yyyyMMdd"); public static int getTwoYearsBefore(int date) { Calendar calendar = Calendar.getInstance(); int year = Integer.parseInt(String.valueOf(date).substring(0, 4)); int month = Integer.parseInt(String.valueOf(date).substring(4, 6)); int day = Integer.parseInt(String.valueOf(date).substring(6, 8)); calendar.set(Calendar.YEAR, year); calendar.set(Calendar.MONTH, month - 1); calendar.set(Calendar.DAY_OF_MONTH, day); calendar.add(Calendar.YEAR, -2); return Integer.parseInt(intSDF.format(new Date(calendar.getTimeInMillis()))); }//from w w w.jav a2s .co m public static String format(Date date, String pattern) { synchronized (customizedFormater) { if (null != pattern && !"".equals(pattern.trim())) { customizedFormater.applyPattern(pattern); } else { throw new IllegalArgumentException("pattern can not be empty"); } return customizedFormater.format(date); } } public static String format(Date date) { synchronized (defaultFormater) { return defaultFormater.format(date); } } }