Java季度工具类

原创 2013年12月06日 10:03:46
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;


import org.apache.commons.lang.StringUtils;


/**
 * 季度工具类
 * @author keertech.wuhao
 * @date 2013-12-6 上午9:04:36
 */
public class SeasonUtils {


public static final String YYYYMMDD = "yyyy-MM-dd";


public static String formatDate(Date date, String pattern) {
String strDate = null;
try {
if (StringUtils.isBlank(pattern)) {
pattern = YYYYMMDD;
}
SimpleDateFormat format = new SimpleDateFormat(pattern);
strDate = format.format(date);
} catch (Exception e) {
e.printStackTrace();
}
return strDate;
}


/**
* 获取季度开始结束日期
* @param season 1:第一季度 ,2:第二季度,3:第三季度 ,4:第四季度
*/
public static Date[] getSeasonDate(int season) {
Date[] dates = new Date[2];
Calendar calendar = new GregorianCalendar();
switch (season) {
case 1:
calendar.set(Calendar.MONTH, Calendar.JANUARY);
calendar.set(Calendar.DAY_OF_MONTH, 1);
dates[0] = calendar.getTime();
calendar.set(Calendar.MONTH, Calendar.MARCH);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
dates[1] = calendar.getTime();
break;
case 2:
calendar.set(Calendar.MONTH, Calendar.APRIL);
calendar.set(Calendar.DAY_OF_MONTH, 1);
dates[0] = calendar.getTime();
calendar.set(Calendar.MONTH, Calendar.JUNE);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
dates[1] = calendar.getTime();
break;
case 3:
calendar.set(Calendar.MONTH, Calendar.JULY);
calendar.set(Calendar.DAY_OF_MONTH, 1);
dates[0] = calendar.getTime();
calendar.set(Calendar.MONTH, Calendar.SEPTEMBER);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
dates[1] = calendar.getTime();
break;
case 4:
calendar.set(Calendar.MONTH, Calendar.OCTOBER);
calendar.set(Calendar.DAY_OF_MONTH, 1);
dates[0] = calendar.getTime();
calendar.set(Calendar.MONTH, Calendar.DECEMBER);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
dates[1] = calendar.getTime();
break;
default:
break;
}
return dates;
}


/**
* 获取季度开始结束日期
* @param season  1:第一季度 ,2:第二季度,3:第三季度 ,4:第四季度
* @param pattern 格式化日期格式
*/
public static String[] getSeasonCharDate(int season, String pattern) {
Date[] dates = getSeasonDate(season);
String[] charDate = new String[2];
if (dates != null && dates.length >= 2) {
if (dates[0] != null) charDate[0] = formatDate(dates[0], pattern);
if (dates[1] != null) charDate[1] = formatDate(dates[1], pattern);
}
return charDate;

}


public static void main(String[] args) {
System.out.println(getSeasonCharDate(1, null)[0] + "--" + getSeasonCharDate(1, null)[1]);
}

}

Java获取时间范围: 当前季度,上个季度,昨天,当前月,上个月

Java中获取当前季度的时间范围, 上个季度的时间范围, 昨天的时间范围, 当前月的时间范围, 上个月的时间范围:   DateUtils.java   package top.itart...
  • piaohai
  • piaohai
  • 2015年09月06日 15:20
  • 6330

JAVA获取目标日期对应的年,月,季度,周时间类

好记性不如烂笔头public class TimeUtil { /** * 获取 当前年、半年、季度、月、日、小时 开始结束时间 */ private final st...
  • Gavin_wangzg
  • Gavin_wangzg
  • 2017年08月14日 16:18
  • 496

Java获取某年某季度的第一天出错

1、错误描述 Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as ...
  • you23hai45
  • you23hai45
  • 2014年05月30日 00:13
  • 1511

Java 基础源码 switch语句判断指定月份属于一年中的哪个季度

/** * * 使用switch语句判断指定月份属于一年中的哪个季度。 * 如果是12月 、1月、 2月,就属于冬季。 * 如果是3月、4月、5月,就属于春季。 * 如果是6月、7月、8月...
  • aikongmeng
  • aikongmeng
  • 2013年06月04日 09:26
  • 5104

java获取某月,某季度的第一天和最后一天

/** * 某一个月第一天和最后一天 * * @param date 指定日期 * @param pattern 日期格式 * @param isNeedHms是否需要时分秒 * @re...
  • East_MrChiu
  • East_MrChiu
  • 2017年04月11日 11:21
  • 465

java取当前周期、月初至月末、季度初至季度末日期。

Calendar calendar = new GregorianCalendar();      // 1. 当前登陆日期的周一至周五的日期 比如 现在是2012-06-11 周一是2012-06-...
  • ye1992
  • ye1992
  • 2014年07月15日 17:28
  • 11119

java 计算天月季度年的起始结束时间戳(直接运行即可)

java 计算天月季度年的起始结束时间戳
  • xiaowanziwuha
  • xiaowanziwuha
  • 2016年07月25日 17:59
  • 1505

java获取当前时间的年周月季度等的开始结束时间

项目中常常用到,昵称一个月修改一次,活动一周参加一次等等类似的需求,索性把可能用到的所有方法都写出来,放在一个工具类里面。 import java.text.SimpleDateFormat; im...
  • Augus3344
  • Augus3344
  • 2016年03月30日 23:04
  • 4721

用js根据当前季度获取上一季度

var myDate = new Date(); var today= myDate.toLocaleDateString();//获取当前日期 var strYear = myDate.getF...
  • TaoShao521
  • TaoShao521
  • 2016年01月20日 15:10
  • 521

Bootstrap Datetimepicker 季度筛选

仅限于筛选到季度。原理 将原月筛选转为季度筛选。实现 添加datetimepicker自定义语言: $.fn.datetimepicker.dates['zh-CN-qtrs'] = { ...
  • Godian
  • Godian
  • 2017年12月01日 10:29
  • 347
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java季度工具类
举报原因:
原因补充:

(最多只允许输入30个字)