packagecom.zrar.date;
importjava.util.Calendar;
/**
*
*描述:此类用于取得当前日期相对应的月初,月末,季初,季末,年初,年末,返回值均为String字符串
*1、得到当前日期today()
*2、得到当前月份月初thisMonth()
*3、得到当前月份月底thisMonthEnd()
*4、得到当前季度季初thisSeason()
*5、得到当前季度季末thisSeasonEnd()
*6、得到当前年份年初thisYear()
*7、得到当前年份年底thisYearEnd()
*8、判断输入年份是否为闰年leapYear
*
*注意事项:日期格式为:xxxx-yy-zz(eg:-12-05)
*
*实例:
*
*@authorpure
*/
publicclassDateThis{
privateintx;//日期属性:年
privateinty;//日期属性:月
privateintz;//日期属性:日
privateCalendarlocalTime;//当前日期
publicDateThis(){
localTime=Calendar.getInstance();
}
/**
*功能:得到当前日期格式为:xxxx-yy-zz(eg:-12-05)
*@returnString
*@authorpure
*/
publicStringtoday(){
StringstrY=null;
StringstrZ=null;
x=localTime.get(Calendar.YEAR);
y=localTime.get(Calendar.MONTH)+1;
z=localTime.get(Calendar.DATE);
strY=y>=10?String.valueOf(y):("0"+y);
strZ=z>=10?String.valueOf(z):("0"+z);
returnx+"-"+strY+"-"+strZ;
}
/**
*功能:得到当前月份月初格式为:xxxx-yy-zz(eg:-12-01)
*@returnString
*@authorpure
*/
publicStringthisMonth(){
StringstrY=null;
x=localTime.get(Calendar.YEAR);
y=localTime.get(Calendar.MONTH)+1;
strY=y>=10?String.valueOf(y):("0"+y);
returnx+"-"+strY+"-01";
}
/**
*功能:得到当前月份月底格式为:xxxx-yy-zz(eg:-12-31)
*@returnString
*@authorpure
*/
publicStringthisMonthEnd(){
StringstrY=null;
StringstrZ=null;
booleanleap=false;
x=localTime.get(Calendar.YEAR);
y=localTime.get(Calendar.MONTH)+1;
if(y==1||y==3||y==5||y==7||y==8||y==10||y==12){
strZ="31";
}
if(y==4||y==6||y==9||y==11){
strZ="30";
}
if(y==2){
leap=leapYear(x);
if(leap){
strZ="29";
}
else{
strZ="28";
}
}
strY=y>=10?String.valueOf(y):("0"+y);
returnx+"-"+strY+"-"+strZ;
}
/**
*功能:得到当前季度季初格式为:xxxx-yy-zz(eg:-10-01)
*@returnString
*@authorpure
*/
publicStringthisSeason(){
StringdateString="";
x=localTime.get(Calendar.YEAR);
y=localTime.get(Calendar.MONTH)+1;
if(y>=1&&y<=3){
dateString=x+"-"+"01"+"-"+"01";
}
if(y>=4&&y<=6){
dateString=x+"-"+"04"+"-"+"01";
}
if(y>=7&&y<=9){
dateString=x+"-"+"07"+"-"+"01";
}
if(y>=10&&y<=12){
dateString=x+"-"+"10"+"-"+"01";
}
returndateString;
}
/**
*功能:得到当前季度季末格式为:xxxx-yy-zz(eg:-12-31)
*@returnString
*@authorpure
*/
publicStringthisSeasonEnd(){
StringdateString="";
x=localTime.get(Calendar.YEAR);
y=localTime.get(Calendar.MONTH)+1;
if(y>=1&&y<=3){
dateString=x+"-"+"03"+"-"+"31";
}
if(y>=4&&y<=6){
dateString=x+"-"+"06"+"-"+"30";
}
if(y>=7&&y<=9){
dateString=x+"-"+"09"+"-"+"30";
}
if(y>=10&&y<=12){
dateString=x+"-"+"12"+"-"+"31";
}
returndateString;
}
/**
*功能:得到当前年份年初格式为:xxxx-yy-zz(eg:-01-01)
*@returnString
*@authorpure
*/
publicStringthisYear(){
x=localTime.get(Calendar.YEAR);
returnx+"-01"+"-01";
}
/**
*功能:得到当前年份年底格式为:xxxx-yy-zz(eg:-12-31)
*@returnString
*@authorpure
*/
publicStringthisYearEnd(){
x=localTime.get(Calendar.YEAR);
returnx+"-12"+"-31";
}
/**
*功能:判断输入年份是否为闰年
*
*@paramyear
*@return是:true否:false
*@authorpure
*/
publicbooleanleapYear(intyear){
booleanleap;
if(year%4==0){
if(year%100==0){
if(year%400==0)leap=true;
elseleap=false;
}
elseleap=true;
}
elseleap=false;
returnleap;
}
}