zoukankan      html  css  js  c++  java
  • java中关于日期类Calendar的简单使用

    根据年月获取月份第一天

    public static String getSDateOfMonth(String monthId) {
        String SDate;
        Calendar cal = Calendar.getInstance();
        int year = cal.get(Calendar.YEAR);
        int month = cal.get(Calendar.MONTH) + 1;
        int y = Integer.parseInt(monthId.substring(0, 4));
        int m = Integer.parseInt(monthId.substring(4, 6));
        if (y == year && m == month) {
          if (month < 10) {// 月份少于10
            SDate = "" + year + "-0" + month + "-01";
          } else {
            SDate = "" + year + month + "-01";
          }
        } else {// 不是当前月
          if (m < 10) {// 月份少于10
            SDate = "" + y + "-0" + m + "-01";
          } else {
            SDate = "" + y + m + "-01";
          }
        }
        return SDate;
      };

    根据年月获取月份最后一天

    public static String getLastDayOfMonth(String monthId) {
        int year = Integer.parseInt(monthId.substring(0, 4));
        int month = Integer.parseInt(monthId.substring(4, 6));
        Calendar cal = Calendar.getInstance();
        // 设置年份
        cal.set(Calendar.YEAR, year);
        // 设置月份
        cal.set(Calendar.MONTH, month - 1);
        // 获取某月最大天数
        int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
        // 设置日历中月份的最大天数
        cal.set(Calendar.DAY_OF_MONTH, lastDay);
        // 格式化日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String lastDayOfMonth = sdf.format(cal.getTime());
    
        return lastDayOfMonth;
      };

    判断是否是当前年月

    public static boolean isCurrentMonth(String month) {
        Calendar cal = Calendar.getInstance();
        int currentYear = cal.get(Calendar.YEAR);
        int currentMonth = cal.get(Calendar.MONTH) + 1;
        int y = Integer.parseInt(month.substring(0, 4));
        int m = Integer.parseInt(month.substring(4, 6));
        if (y == currentYear && m == currentMonth) {
          return true;
        }else{
          return false;
        }
      };
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
             
            //获取前月的第一天 
            Calendar   cal_1=Calendar.getInstance();//获取当前日期  
            cal_1.add(Calendar.MONTH, -1); 
            cal_1.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天  
            firstDay = format.format(cal_1.getTime()); 
            System.out.println("-----1------firstDay:"+firstDay);
    
    
    
            //获取前月的最后一天 
            Calendar cale = Calendar.getInstance();    
            cale.set(Calendar.DAY_OF_MONTH,0);//设置为1号,当前日期既为本月第一天  
            lastDay = format.format(cale.getTime()); 
            System.out.println("-----2------lastDay:"+lastDay); 
             
             
            //获取当前月第一天: 
            Calendar c = Calendar.getInstance();     
            c.add(Calendar.MONTH, 0); 
            c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天  
            String first = format.format(c.getTime()); 
            System.out.println("===============first:"+first); 
             
            //获取当前月最后一天 
            Calendar ca = Calendar.getInstance();     
            ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH));   
            String last = format.format(ca.getTime()); 
            System.out.println("===============last:"+last);
  • 相关阅读:
    Dictionary集合 字典
    装箱和拆箱
    List< >泛型集合
    Hashtable 键值对集合
    File 类 的基本操作
    简体转换繁体
    ArrayList集合长度的问题
    ArrayList  集合
    里式转换
    字符串中常用的方法
  • 原文地址:https://www.cnblogs.com/gaomanito/p/9099362.html
Copyright © 2011-2022 走看看