import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class Test {
public static void main(String[] args) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar now = Calendar.getInstance();
Calendar startDate = new GregorianCalendar();//开始时间
Calendar endDate = new GregorianCalendar();//结束时间
int minDay = now.getActualMinimum(Calendar.DAY_OF_MONTH);
int maxDay = now.getActualMaximum(Calendar.DAY_OF_MONTH);
//时段,一小时为一个时段
startDate.set(Calendar.MINUTE, 0);
startDate.set(Calendar.SECOND, 0);
System.out.println("当前时段开始时间:"+sdf.format(startDate.getTime()));
endDate.set(Calendar.MINUTE, 59);
endDate.set(Calendar.SECOND, 59);
System.out.println("当前时段结束时间:"+sdf.format(endDate.getTime()));
// 当天开始时间
startDate.set(Calendar.HOUR_OF_DAY, 0);
startDate.set(Calendar.MINUTE, 0);
startDate.set(Calendar.SECOND, 0);
System.out.println("当天开始时间:"+sdf.format(startDate.getTime()));
//当天结束时间
endDate.set(Calendar.HOUR_OF_DAY, 23);
endDate.set(Calendar.MINUTE, 59);
endDate.set(Calendar.SECOND, 59);
System.out.println("当天结束时间:"+sdf.format(endDate.getTime()));
// 当周开始时间
startDate.setFirstDayOfWeek(Calendar.MONDAY);
startDate.set(Calendar.HOUR_OF_DAY, 0);
startDate.set(Calendar.MINUTE, 0);
startDate.set(Calendar.SECOND, 0);
startDate.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
System.out.println("当周开始时间:"+sdf.format(startDate.getTime()));
//当周结束时间
endDate.setFirstDayOfWeek(Calendar.MONDAY);
endDate.set(Calendar.HOUR_OF_DAY, 23);
endDate.set(Calendar.MINUTE, 59);
endDate.set(Calendar.SECOND, 59);
endDate.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
System.out.println("当周结束时间:"+sdf.format(endDate.getTime()));
System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
now.set(now.get(Calendar.YEAR), now.get(Calendar.MONTH), minDay, 00, 00, 00);
System.out.println("当月的第一天:" + sdf.format(now.getTime()));
System.out.println("maxDay:"+maxDay+"Calendar.DAY_OF_MONTH:"+Calendar.DAY_OF_MONTH);
//按你的要求设置时间
now.set(now.get(Calendar.YEAR), now.get(Calendar.MONTH), maxDay, 23, 59, 59);
System.out.println("当月的最后一天:" + sdf.format(now.getTime()));
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
System.out.println("-----------------------");
System.out.println(sdf.format(now.getTime()));
int month = now.get(Calendar.MONTH) + 1;
if(month == 1 || month ==2 || month ==3){
now.set(now.get(Calendar.YEAR), 0, minDay, 00, 00, 00);
System.out.println("一季度的第一天:" + sdf.format(now.getTime()));
now.set(now.get(Calendar.YEAR), 2, maxDay, 23, 59, 59);
System.out.println("一季度的最后一天:" + sdf.format(now.getTime()));
}
else if(month == 4 || month ==5 || month ==6){
now.set(now.get(Calendar.YEAR), 3, minDay, 00, 00, 00);
System.out.println("二季度的第一天:" + sdf.format(now.getTime()));
now.set(now.get(Calendar.YEAR), 5, maxDay, 23, 59, 59);
System.out.println("二季度的最后一天:" + sdf.format(now.getTime()));
}
else if(month == 7 || month ==8 || month ==9){
now.set(now.get(Calendar.YEAR), 6, minDay, 00, 00, 00);
System.out.println("三季度的第一天:" + sdf.format(now.getTime()));
now.set(now.get(Calendar.YEAR), 8, maxDay, 23, 59, 59);
System.out.println("三季度的最后一天:" + sdf.format(now.getTime()));
}
else if(month == 10 || month ==11 || month ==12){
now.set(now.get(Calendar.YEAR), 9, minDay, 00, 00, 00);
System.out.println("四季度的第一天:" + sdf.format(now.getTime()));
now.set(now.get(Calendar.YEAR), 11, maxDay, 23, 59, 59);
System.out.println("四季度的最后一天:" + sdf.format(now.getTime()));
}
}
分享到:
相关推荐
java获取本月的开始时间\结束时间、获取上月的开始时间\结束时间、获取本年的开始时间\结束时间、获取某个日期的开始时间\结束时间、获取今年是哪一年、获取本月是哪一月
获取当天、昨天、上周、当月、上个月 当年等起始和结束时间
当前的日期、根据指定日期得获取对应年份的所有月的日期、获取月初时间、获取月末时间、获取当天的起始时间、获取当天的结束时间、获取昨天的开始时间、获取昨天的结束时间、当前季度的开始时间、当前季度的结束时间...
主要为大家详细介绍了java获取指定开始时间与结束时间之间的所有日期,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要介绍了java根据开始时间结束时间计算中间间隔日期的实例代码,需要的朋友可以参考下
开始时间和结束时间的最大范围不能超过10天,开始时间不能大于结束时间并且两者都不能大于当前服务器的时间
本工具包主要是基于JAVA的底层时间类的处理周期时间的工具包,主要用于处理并得到周期性提醒的时间,比如说您想要在每天8:10、每月1号8:20、每周三8:30、每10分钟、每3小时、每季度第一个月1号8:10等等处理一项...
计算两个时间差(小时),生成一个上下班时间,因为夏季冬季不一样,一个日历是不是法定节假日,一个日历是不是法定要工作的周末,计算下一个流程开始时间=结束时间+1hour 如果不再工作时间内则从第二天早上开始。...
获取当前月份所属季度之前的四个季度(可以获取多个),比如说是:当前是2017年9月,就属于2017年的第三季度用2017Q3表示。我想要获取2017Q2、2017Q1、2016Q4、...
LocalDateTime常用操作工具类,主要包括的...- 获取月的开始时间 - 获取某月的开始时间 - 获取月的结束时间 - 获取某月的结束时间 - 获取日的开始时间 - 获取某日的开始时间 - 获取日的结束时间 - 获取某日的结束时间
java 将excel里面的数字时间转化为准确的时间格式;具体来源有点忘记了,实现是摘自了开源代码里面的一段。
java根据时间生成唯一ID,普通的根据时间生成的ID放在循环内很容易重复。
java 使用Date类获取系统的当前时间 java 使用Date类获取系统的当前时间 java 使用Date类获取系统的当前时间
java获取某个时间段的秒值或毫秒值集合
日期操作类 Long转日期 字符串毫秒转日期 格式化日期转换方法,年 月 日 时 分 秒 把格式化的日期补全 把格式化的日期转化为毫秒 获取...获得本月的开始时间 当前月的结束时间 当前季度的开始时间 当前季度的结束时间
java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间
使用纯java swing 编写的日期时间选择控件,免去了以前的手动输入造成的输入错误,输入丢失的不必要的错误
根据输入月份获取季度区间,属于日期时间的工具类!
时间序列预测法是一种定量分析方法,它是在时间序列变量分析的基础上,运用一定的数学方法建立预测模型,使时间趋势向外延伸,从而预测未来市场的发展变化趋势,确定变量预测值。
java文件夹排序,按时间、大小等排序。。。。。。