zoukankan      html  css  js  c++  java
  • 使用java的Calendar对象获得当前日期的上几个度开始、结束时间

    思路:

    先获得当前季度的开始和结束日期,在当前日期的基础上往前推3个月即上个季度的开始和结束日期

    /**
    	 * @param flag true:开始日期;false:结束日期
    	 * @return
    	 */
    	public static String getLastQuarterTime(boolean flag){
    		SimpleDateFormat shortSdf = new SimpleDateFormat("yyyy-MM-dd");
    		SimpleDateFormat longSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		
    		String resultDate="";
    		Date now = null;
    		try {
    			Calendar calendar = Calendar.getInstance();
    			int currentMonth = calendar.get(Calendar.MONTH) + 1;
    			//true:开始日期;false:结束日期
    			if(flag){
    				if (currentMonth >= 1 && currentMonth <= 3)
    					calendar.set(Calendar.MONTH, 0);
    				else if (currentMonth >= 4 && currentMonth <= 6)
    					calendar.set(Calendar.MONTH, 3);
    				else if (currentMonth >= 7 && currentMonth <= 9)
    					calendar.set(Calendar.MONTH, 6);
    				else if (currentMonth >= 10 && currentMonth <= 12)
    					calendar.set(Calendar.MONTH, 9);
    				calendar.set(Calendar.DATE, 1);
    				
    				now = longSdf.parse(shortSdf.format(calendar.getTime()) + " 00:00:00");
    			}else{
    				if (currentMonth >= 1 && currentMonth <= 3) {
    					calendar.set(Calendar.MONTH, 2);
    					calendar.set(Calendar.DATE, 31);
    	            } else if (currentMonth >= 4 && currentMonth <= 6) {
    	            	calendar.set(Calendar.MONTH, 5);
    	            	calendar.set(Calendar.DATE, 30);
    	            } else if (currentMonth >= 7 && currentMonth <= 9) {
    	            	calendar.set(Calendar.MONTH, 8);
    	            	calendar.set(Calendar.DATE, 30);
    	            } else if (currentMonth >= 10 && currentMonth <= 12) {
    	            	calendar.set(Calendar.MONTH, 11);
    	            	calendar.set(Calendar.DATE, 31);
    	            }
    				now = longSdf.parse(shortSdf.format(calendar.getTime()) + " 23:59:59");
    			}
    			calendar.setTime(now);// 设置日期
    			calendar.add(Calendar.MONTH, -3);
    			resultDate = longSdf.format(calendar.getTime());
    			
    		} catch (Exception e) {
    			;
    		}
    		return resultDate;
    	}
    

      

  • 相关阅读:
    改造vant日期选择
    css3元素垂直居中
    npm综合
    (转)网页加水印方法
    Mac下IDEA自带MAVEN插件的全局环境配置
    隐藏注册控件窗口
    High performance optimization and acceleration for randomWalk, deepwalk, node2vec (Python)
    How to add conda env into jupyter notebook installed by pip
    The Power of WordNet and How to Use It in Python
    背单词app测评,2018年
  • 原文地址:https://www.cnblogs.com/qadada/p/4614692.html
Copyright © 2011-2022 走看看