根据当前时间获取相应的时间点
- 秒数转为时分秒
- 获取当前月份的月初 格式为 yyyy-MM-01
- 获取本月份月底
- 获取当前季度月初 yyyy-MM-01
- 本季度月末 yyyy-MM-dd
- 获取指定年月最后一天
来啊,上代码~~
public class DateUtil {
private static int x;
private static int y;
private static int z;
private static Calendar localTime = Calendar.getInstance();
public static String today() {
String strY = null;
String strZ = 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);
return x + "-" + strY + "-" + strZ;
}
public static String secondToTime(long second){
try {
long days = second / 86400;
second = second % 86400;
long hours = second / 3600;
second = second % 3600;
long minutes = second /60;
second = second % 60;
if(days>0){
return days + "天" + hours + "小时" + minutes + "分" + second + "秒";
}else if(hours>0){
return hours + "小时" + minutes + "分" + second + "秒";
}else if (minutes > 0) {
return minutes + "分" + second + "秒";
}else {
return second + "秒";
}
} catch (Exception e) {
return "";
}
}
public static String thisMonth() {
String strY = null;
x = localTime.get(Calendar.YEAR);
y = localTime.get(Calendar.MONTH) + 1;
strY = y >= 10 ? String.valueOf(y) : ("0" + y);
return x + "-" + strY + "-01";
}
public static String thisMonthEnd() {
String strY = null;
String strZ = null;
boolean leap = 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);
return x + "-" + strY + "-" + strZ;
}
public static String thisSeason() {
String dateString = "";
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";
}
return dateString;
}
public static String thisSeasonEnd() {
String dateString = "";
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";
}
return dateString;
}
public static String thisYear() {
x = localTime.get(Calendar.YEAR);
return x + "-01" + "-01";
}
public static String thisYearEnd() {
x = localTime.get(Calendar.YEAR);
return x + "-12" + "-31";
}
public static String getLastDayOfMonth(String year, String month) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, Integer.parseInt(year));
cal.set(Calendar.MONTH, Integer.parseInt(month) - 1);
cal.set(Calendar.DATE, 1);
cal.add(Calendar.MONTH,1);
cal.add(Calendar.DATE, -1);
return String.valueOf(cal.get(Calendar.DAY_OF_MONTH));
}
public static void main(String[] argc) {
System.out.println(getLastDayOfMonth("2019", "09"));
System.out.println(thisMonthEnd());
}