java.util.Properties
java.util.Calendar;
java.text.DateFormat
java.text.SimpleDateFormat
DateUtil类
package test;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
/**
* 获取当前日期时间
*
* @return
*/
public static Date getCurrentDate() {
Calendar calendar = Calendar.getInstance();
return calendar.getTime();
}
/**
* 获取当前日期格式化yyyy-MM-dd
*
* @return
*/
public static String dateFomat() {
DateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd");
return dateFormat.format(getCurrentDate());
}
/**
* 输入时间计算是周几
* @param date
* @return String
*/
public static String witchDayOFWeek(Date date) {
Calendar calendar = Calendar.getInstance();
if (date != null) {
calendar.setTime(date);
}
//1是星期日,2是星期一.....7是星期六
int number = calendar.get(Calendar.DAY_OF_WEEK);//
String[] str = { "", "日", "一", "二", "三", "四", "五", "六", };
return str[number];
}
/**
* 获取某日期所在月的总天数
*
* @param date
* @return
*/
public static int getTotalMonthDate(Date date) {
if (date == null)
return 0;
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.DATE, 1);// 把日期设置为当月第一天
calendar.roll(Calendar.DATE, -1);// 日期回滚一天,也就是最后一天
return calendar.get(Calendar.DATE);
}
}
测试用例
package test;
import java.util.Date;
import org.junit.Test;
public class DateTest {
@Test
public void testDateUtil() {
String dateTime = DateUtil.dateFomat();// 格式化为yyyy-MM-dd日期
Date date = DateUtil.getCurrentDate();// 当前日期
int totalDate = DateUtil.getTotalMonthDate(date);//获得当前日期这个月的总天数
String dateWeek = DateUtil.witchDayOFWeek(date);//获得现在是星期几
System.out.println("dateWeek===" + dateWeek);
System.out.println("现在是北京时间" + dateTime + ",本月共有" + totalDate + "天。");
System.out.println("现在是北京时间" + dateTime + ",今天是星期" + dateWeek + "。");
}
}
Console:输出
dateWeek===日
现在是北京时间2018-07-22,本月共有31天。
现在是北京时间2018-07-22,今天是星期日。