A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

DateFormat df=DateFormat.getDateInstance();

3 个回复

倒序浏览
......12354
回复 使用道具 举报
来拿黑马币
回复 使用道具 举报
来,楼主。分享一个我平时总结的日期常用的方法
  1. package date;

  2. import java.text.SimpleDateFormat;
  3. import java.util.Calendar;
  4. import java.util.Date;

  5. /**
  6. * @author 小媛 <br>
  7. *         ①月份所填的值 要比实际值小1. 所以参数-1<br>
  8. *         ②星期 要比实际值大1. 所以参数+1<br>
  9. */
  10. public class Demo_Date {
  11.         public static void main(String[] args) {
  12.                 //需要什么方法从下面调取 验证
  13.         }

  14.         /**
  15.          * 获取两个时间之间 的 间隔天数yi
  16.          *
  17.          * @param start
  18.          * @param end
  19.          * @return
  20.          */
  21.         public static int getIntervalTimes(Date start, Date end) {
  22.                 if (start.after(end)) {
  23.                         Date date = start;
  24.                         start = end;
  25.                         end = date;
  26.                 }

  27.                 long startTimes = start.getTime();
  28.                 long endTimes = end.getTime();
  29.                 long intervalTimes = startTimes - endTimes;

  30.                 return (int) (intervalTimes / (1000 * 60 * 60 * 24));
  31.         }

  32.         /**
  33.          * 获取两个时间之间 的 间隔天数
  34.          *
  35.          * @param start
  36.          * @param end
  37.          * @return
  38.          */
  39.         public static int getIntervalTimes(Calendar start, Calendar end) {
  40.                 if (start.after(end)) {
  41.                         Calendar temp = start;
  42.                         start = end;
  43.                         end = temp;
  44.                 }

  45.                 long startTimes = start.getTimeInMillis();
  46.                 long endTimes = start.getTimeInMillis();
  47.                 long intervalTimes = startTimes - endTimes;

  48.                 return (int) (intervalTimes / (1000 * 60 * 60 * 24));
  49.         }

  50.         /**
  51.          * 获取某年某月某日,在添加了×天之后,又回到本月的第几天
  52.          *
  53.          * @param year
  54.          * @param mouth
  55.          * @param date
  56.          * @param addDate
  57.          */
  58.         private static String getDateWithAddAtMouth(int year, int mouth, int date, int addDate) {
  59.                 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  60.                 Calendar calendar = Calendar.getInstance();
  61.                 calendar.set(Calendar.YEAR, year);
  62.                 calendar.set(Calendar.MONTH, mouth - 1);
  63.                 calendar.set(Calendar.DAY_OF_MONTH, date);
  64.                 calendar.roll(Calendar.DATE, addDate);
  65.                 Date time = calendar.getTime();
  66.                 return simpleDateFormat.format(time);
  67.         }

  68.         /**
  69.          * 计算某年某月某日 的基础上 添加×天
  70.          *
  71.          * @param year
  72.          * @param mouth
  73.          * @param day
  74.          * @param addDay
  75.          */
  76.         private static String getDateWithAdd(int year, int mouth, int day, int addDay) {
  77.                 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  78.                 Calendar calendar = Calendar.getInstance();
  79.                 calendar.set(Calendar.YEAR, year);
  80.                 calendar.set(Calendar.MONTH, mouth - 1);
  81.                 calendar.set(Calendar.DAY_OF_MONTH, day);
  82.                 calendar.add(Calendar.DATE, addDay);
  83.                 Date time = calendar.getTime();
  84.                 return simpleDateFormat.format(time);
  85.         }

  86.         /**
  87.          * 获取某年的第几个星期几,是×年×月×日
  88.          *
  89.          * @param year
  90.          * @param noWeekOfYear
  91.          * @param noDayOfWeek
  92.          */
  93.         private static String getNoWeekIsNoDay(int year, int noWeekOfYear, int noDayOfWeek) {
  94.                 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  95.                 Calendar calendar = Calendar.getInstance();
  96.                 calendar.set(Calendar.YEAR, year);
  97.                 calendar.set(Calendar.WEEK_OF_YEAR, noWeekOfYear);
  98.                 calendar.set(Calendar.DAY_OF_WEEK, noDayOfWeek);
  99.                 return simpleDateFormat.format(calendar.getTime());
  100.         }

  101.         /**
  102.          * 获取某年某月某日,是一年中的第几个星期
  103.          *
  104.          * @param year
  105.          * @param mouth
  106.          * @param day
  107.          */
  108.         private static int getDayAtYearByNoWeek(int year, int mouth, int day) {
  109.                 Calendar calendar = Calendar.getInstance();
  110.                 calendar.set(Calendar.YEAR, year);
  111.                 calendar.set(Calendar.MONTH, mouth - 1);
  112.                 calendar.set(Calendar.DAY_OF_MONTH, day);
  113.                 int weekNo = calendar.get(Calendar.WEEK_OF_YEAR);
  114.                 return weekNo;
  115.         }

  116.         /**
  117.          * 格式化输出 转换日期格式
  118.          */
  119.         private static String Date4Format() {
  120.                 Date date = new Date();
  121.                 SimpleDateFormat fm = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
  122.                 return fm.format(date);
  123.         }

  124.         /**
  125.          * Date转换成 Calendar格式
  126.          */
  127.         private static void Date4Calendar() {
  128.                 Date date = new Date();
  129.                 Calendar time = Calendar.getInstance();
  130.                 time.setTime(date);
  131.                 System.out.println(date);
  132.         }

  133.         /**
  134.          * 获取一个月的最大天数
  135.          */
  136.         private static void getMonthMaxDay() {
  137.                 Calendar time = Calendar.getInstance();
  138.                 time.clear();
  139.                 time.set(Calendar.YEAR, 2015);
  140.                 time.set(Calendar.MONTH, 7 - 1);
  141.                 int day = time.getActualMaximum(Calendar.DAY_OF_MONTH);
  142.                 System.out.println(day);
  143.         }

  144. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马