/**
* 获取特定日期的后一天
* @param strDate
* @return
* @throws ParseException
*/
public static String getTomorrow(String strDate) throws ParseException{
Calendar c = Calendar.getInstance();
Date date=null;
try {
date = new SimpleDateFormat("yyyy-MM-dd").parse(strDate);
} catch (ParseException e) {
e.printStackTrace();
}
c.setTime(date);
int day=c.get(Calendar.DATE);
c.set(Calendar.DATE,day+1);
String dayAfter=new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
return dayAfter;
}
/**
* 获取特定日期的前一天
* @param strDate
* @return
*/
public static String getYesterday(String strDate){
Calendar c = Calendar.getInstance();
Date date=null;
try {
date = new SimpleDateFormat("yyyy-MM-dd").parse(strDate);
} catch (ParseException e) {
e.printStackTrace();
}
c.setTime(date);
int day=c.get(Calendar.DATE);
c.set(Calendar.DATE,day-1);
String dayBefore=new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
return dayBefore;
}
/**
* 根据输入的月份,日期获取改月日属于什么季节
* @param monthIn
* @param dayIn
* @return
*/
SEASON:
1、早春(2.1-3.15)
2、春季(3.16-5.31)
3、夏季(6.1-9.15)
4、秋季(9.16-.11.15)
5、冬季(11.16-1.31)
public static String getSeasonValue(int monthIn, int dayIn) {
String result = "";
String month = "";
String day = "";
if (monthIn < 10)
month = "0" + String.valueOf(monthIn);
else
month = String.valueOf(monthIn);
if (dayIn < 10)
day = "0" + String.valueOf(dayIn);
else
day = String.valueOf(dayIn);
String date = month + day;
if (date.compareTo("0201") >= 0 && date.compareTo("0315") <= 0)
result = "1";
else if (date.compareTo("0316") >= 0 && date.compareTo("0531") <= 0)
result = "2";
else if (date.compareTo("0601") >= 0 && date.compareTo("0915") <= 0)
result = "3";
else if (date.compareTo("0916") >= 0 && date.compareTo("1115") <= 0)
result = "4";
else if ((date.compareTo("1116") >= 0 && date.compareTo("1231") <= 0)
|| (date.compareTo("0101") >= 0 && date.compareTo("0131") <= 0))
result = "5";
else
result = "Error!";// 输入的的日期格式有错误
return result;
}
测试main方法
public static void main(String[] args) throws ParseException {
System.out.println(DateUtils.getTomorrow("2016-10-31"));
System.out.println(DateUtils.getYesterday("2016-10-31"));
Calendar cal = Calendar.getInstance();
int day = cal.get(Calendar.DATE);
int month = cal.get(Calendar.MONTH) + 1;
System.out.println(getSeasonValue(month, day));
}