Here you can find the source of dateAdd(int interval, Date date, int n)
public static Date dateAdd(int interval, Date date, int n)
//package com.java2s; import java.util.Calendar; import java.util.Date; public class Main { public static Date dateAdd(int interval, Date date, int n) { long time = date.getTime() / 1000L; switch (interval) { case 1://from w w w .j a v a 2 s . c om time += n * 86400; break; case 2: time += n * 604800; break; case 3: time += n * 2678400; break; case 4: time += n * 31536000l; break; case 5: time += n * 3600; break; case 6: time += n * 60; break; case 7: time += n; } Date result = new Date(); result.setTime(time * 1000L); return result; } public static String getTime(int format) { StringBuffer cTime = new StringBuffer(10); Calendar time = Calendar.getInstance(); int miltime = time.get(14); int second = time.get(13); int minute = time.get(12); int hour = time.get(11); int day = time.get(5); int month = time.get(2) + 1; int year = time.get(1); if (format != 14) if (year >= 2000) year -= 2000; else year -= 1900; if (format >= 2) if (format == 14) cTime.append(year); else cTime.append(getFormatTime(year, 2)); if (format >= 4) cTime.append(getFormatTime(month, 2)); if (format >= 6) cTime.append(getFormatTime(day, 2)); if (format >= 8) cTime.append(getFormatTime(hour, 2)); if (format >= 10) cTime.append(getFormatTime(minute, 2)); if (format >= 12) cTime.append(getFormatTime(second, 2)); if (format >= 15) cTime.append(getFormatTime(miltime, 3)); return cTime.toString(); } private static String getFormatTime(int time, int format) { StringBuffer numm = new StringBuffer(); int length = String.valueOf(time).length(); if (format < length) return null; for (int i = 0; i < format - length; ++i) numm.append("0"); numm.append(time); return numm.toString().trim(); } }