zoukankan      html  css  js  c++  java
  • Java自学-日期 Calendar

    Java的Calendar类

    Calendar类即日历类,常用于进行“翻日历”,比如下个月的今天是哪天

    示例 1 : Calendar与Date进行转换

    采用单例模式获取日历对象Calendar.getInstance();

    package date;
      
    import java.util.Calendar;
    import java.util.Date;
      
    public class TestDate {
      
        public static void main(String[] args) {
            //采用单例模式获取日历对象Calendar.getInstance();
            Calendar c = Calendar.getInstance();
              
            //通过日历对象得到日期对象
            Date d = c.getTime();
      
            Date d2 = new Date(0);
            c.setTime(d2); //把这个日历,调成日期 : 1970.1.1 08:00:00
        }
    }
    

    示例 2 : 翻日历

    add方法,在原日期上增加年/月/日
    set方法,直接设置年/月/日
    翻日历

    package date;
     
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
     
    public class TestDate {
     
        private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
     
        public static void main(String[] args) {
            Calendar c = Calendar.getInstance();
            Date now = c.getTime();
            // 当前日期
            System.out.println("当前日期:	" + format(c.getTime()));
     
            // 下个月的今天
            c.setTime(now);
            c.add(Calendar.MONTH, 1);
            System.out.println("下个月的今天:	" +format(c.getTime()));
     
            // 去年的今天
            c.setTime(now);
            c.add(Calendar.YEAR, -1);
            System.out.println("去年的今天:	" +format(c.getTime()));
     
            // 上个月的第三天
            c.setTime(now);
            c.add(Calendar.MONTH, -1);
            c.set(Calendar.DATE, 3);
            System.out.println("上个月的第三天:	" +format(c.getTime()));
     
        }
     
        private static String format(Date time) {
            return sdf.format(time);
        }
    }
    

    练习Calendar

    找出下个月的倒数第3天是哪天

    答案

    package date;
       
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
       
    public class TestDate {
       
        private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       
        public static void main(String[] args) {
            Calendar c = Calendar.getInstance();
              
            System.out.println("今天是:" + format( c.getTime()));
            //先翻到下下个月
            c.add(Calendar.MONTH,2);
            //设置到月初
            c.set(Calendar.DATE,1);
            //再往回翻3天
            c.add(Calendar.DATE,-3);
             Exception e;
            System.out.println("下个月倒数第三天是:" + format(c.getTime()));
              
        }
       
        private static String format(Date time) {
            return sdf.format(time);
        }
    }
    
  • 相关阅读:
    Python字符串转码问题
    tcpip详解笔记(21) TCP的路径MTU探测与长肥管道
    sync,fsync,fdatasync,fflush
    tcpip详解笔记(22) telnet协议
    tcpip详解笔记(18)TCP的超时与重传
    tcpip详解笔记(16) TCP的交互数据流
    Get exception description and stack trace which caused an exception
    tcpip详解笔记(20) TCP的Keepalive定时器
    [转]应该知道的Linux技巧
    How to prettyprint JSON script?
  • 原文地址:https://www.cnblogs.com/jeddzd/p/11661285.html
Copyright © 2011-2022 走看看