博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转]java根据日期获得星期常用方法
阅读量:6039 次
发布时间:2019-06-20

本文共 2206 字,大约阅读时间需要 7 分钟。

本文转自:

 

    /**

     * 根据日期获得星期
     * @param date
     * @return
     */
public static String getWeekOfDate(Date date) {
  String[] weekDaysName = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
  String[] weekDaysCode = { "0", "1", "2", "3", "4", "5", "6" };
  Calendar calendar = Calendar.getInstance();
  calendar.setTime(date);
  int intWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1;
  return weekDaysCode[intWeek];
}
/**
  * 获得周一的日期
  *
  * @param date
  * @return
  */
public static String getMonday(Date date) {

  Calendar calendar = Calendar.getInstance();

  calendar.setTime(date);

  calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);

  return dateFormat.format(calendar.getTime());

}

/**
  * 获得周三的日期
  *
  * @param date
  * @return
  */
public static String getWednesday(Date date) {

  Calendar calendar = Calendar.getInstance();

  calendar.setTime(date);

  calendar.set(Calendar.DAY_OF_WEEK, Calendar.WEDNESDAY);

  return dateFormat.format(calendar.getTime());

}

    /**
  * 获得周五的日期
  *
  * @param date
  * @return
  */
public static String getFriday(Date date) {

  Calendar calendar = Calendar.getInstance();

  calendar.setTime(date);

  calendar.set(Calendar.DAY_OF_WEEK, Calendar.FRIDAY);

  return dateFormat.format(calendar.getTime());

}

/**

  * 当前日期前几天或者后几天的日期
  * @param n
  * @return
  */ 
public static String afterNDay(int n) {

  Calendar calendar = Calendar.getInstance();

  calendar.setTime(new Date());

  calendar.add(Calendar.DATE, n);

  Date date = calendar.getTime();

  String s = dateFormat.format(date);

  return s;

}

/**
  * 判断两个日期是否在同一周
  *
  * @param date1
  * @param date2
  * @return
  */
public static boolean isSameWeekDates(Date date1, Date date2) {
  Calendar cal1 = Calendar.getInstance();
  Calendar cal2 = Calendar.getInstance();
  cal1.setTime(date1);
  cal2.setTime(date2);
  int subYear = cal1.get(Calendar.YEAR) - cal2.get(Calendar.YEAR);
  if (0 == subYear) {
   if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2
     .get(Calendar.WEEK_OF_YEAR))
    return true;
  } else if (1 == subYear && 11 == cal2.get(Calendar.MONTH)) {
   // 如果12月的最后一周横跨来年第一周的话则最后一周即算做来年的第一周
   if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2
     .get(Calendar.WEEK_OF_YEAR))
    return true;
  } else if (-1 == subYear && 11 == cal1.get(Calendar.MONTH)) {
   if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2
     .get(Calendar.WEEK_OF_YEAR))
    return true;
  }
  return false;
}

 

转载地址:http://aurhx.baihongyu.com/

你可能感兴趣的文章
C#Ftp的下载实例
查看>>
HDU4335 What is N? [数论(欧拉函数)]
查看>>
会声会影字幕制作
查看>>
电商网站中添加商品到购物车功能模块2017.12.8
查看>>
由支付宝当面付引发的NatApp方便调试回调
查看>>
享受LINQ:判断一组文字是否在字符串中同时出现的最简单方法
查看>>
UVA1437 String painter
查看>>
poj 1671 Rhyme Schemes
查看>>
HDU 2639 Bone Collector II DP
查看>>
uni-app 通过本地经纬度获取详细地理位置
查看>>
扩展欧几里得学习小记
查看>>
Linux useradd 添加用户
查看>>
poj3427
查看>>
android 模拟器 hardWare 属性说明
查看>>
GM11灰色模型
查看>>
六款值得推荐的android(安卓)开源框架简介
查看>>
max_element( )
查看>>
CSS Grid 布局
查看>>
接口的幂等性
查看>>
java中的类
查看>>