代码比较

复制代码

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("当前日期:\t" + format(c.getTime()));

// 下个月的今天

c.setTime(now);

c.add(Calendar.MONTH, 1);

System.out.println("下个月的今天:\t" +format(c.getTime()));

// 去年的今天

c.setTime(now);

c.add(Calendar.YEAR, -1);

System.out.println("去年的今天:\t" +format(c.getTime()));

// 上个月的第三天

c.setTime(now);

c.add(Calendar.MONTH, -1);

c.set(Calendar.DATE, 3);

System.out.println("上个月的第三天:\t" +format(c.getTime()));

}

private static String format(Date time) {

return sdf.format(time);

}

}

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("当前日期:\t" + format(c.getTime()));

// 下个月的今天

c.setTime(now);

c.add(Calendar.MONTH, 1);

System.out.println("下个月的今天:\t" +format(c.getTime()));

// 去年的今天

c.setTime(now);

c.add(Calendar.YEAR, -1);

System.out.println("去年的今天:\t" +format(c.getTime()));

// 上个月的第三天

c.setTime(now);

c.add(Calendar.MONTH, -1);

c.set(Calendar.DATE, 3);

System.out.println("上个月的第三天:\t" +format(c.getTime()));

}

private static String format(Date time) {

return sdf.format(time);

}

}

日期 java cal,日期系列教材 (三)- 如何使用Java的Calendar类相关推荐

  1. Java命令学习系列(三)——Jmap

    转载自 Java命令学习系列(三)--Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件.远程调试服务器)的共享对象内存映射或堆内存细节.可以使用jmap生成Heap ...

  2. 接口与继承系列教材 (十)- Java 内部类详解

    接口与继承系列教材 (十)- Java 内部类详解 内部类分为四种: 非静态内部类 静态内部类 匿名类 本地类 步骤1:非静态内部类 步骤2:静态内部类 步骤3:匿名类 步骤4:本地类 步骤5:在匿名 ...

  3. Java多线程干货系列(1):Java多线程基础

    转载自  Java多线程干货系列(1):Java多线程基础 前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学 ...

  4. 【零基础学Java】—this关键字的三种用法+Java继承的三个特点(二十一)

    [零基础学Java]-this关键字的三种用法+Java继承的三个特点(二十一) 一.this关键字的三种用法 在本类的成员方法中,访问本类的成员变量 在本类的成员方法中,访问本类的另一个成员方法 在 ...

  5. JAVA基础再回首(三十)——JAVA基础再回首完美结束,感概万千!

    JAVA基础再回首(三十)--JAVA基础再回首完美结束,感概万千! 经过了几个月断断续续的回首java基础,终于回首完了,这一路走来体会到了枯燥.乏味.有趣,当然更多是收获,和第一遍学java基础的 ...

  6. 成为Java GC专家系列(三) ——如何优化Java垃圾回收

    本文是成为Java GC专家系列文章的第三篇.在第一篇<成为Java GC专家系列(1) --Java垃圾回收机制>中我们学习了不同GC算法的执行过程,GC是如何工作的,什么是年轻代和年老 ...

  7. 面向对象系列教材 (一)- Java中的类和对象

    面向对象系列教材 (一)- Java中的类和对象 本章节会引入面向对象的基本概念 (但是不会深入展开,仅仅是引入. 深入的学习会在后续的类和对象以及接口与继承 中展开) 相信你肯定玩过DOTA或者LO ...

  8. Java高并发编程(三):Java内存模型

    1 Java内存模型的基础 在并发编程里,需要处理两个问题: 线程之间如何通信 线程之间如何同步. 通信指的是线程之间以何种机制来交换信息.在命令式编程里中,线程之间的通信机制有两种:共享内存和消息传 ...

  9. 超详细的Java面试题总结(三)之Java集合篇常见问题

    系列文章请查看: 超详细的Java面试题总结(一)之Java基础知识篇 超详细的Java面试题总结(二)之Java基础知识篇 List,Set,Map三者的区别及总结 List:对付顺序的好帮手 Li ...

  10. Java深海拾遗系列(9)--- 关于Java序列化的10个面试问题

    大多数商业项目使用数据库或内存映射文件或只是普通文件, 来满足持久性要求, 只有很少的项目依赖于 Java 中的序列化过程.无论如何,这篇文章不是 Java 序列化教程或如何序列化在 Java 的对象 ...

最新文章

  1. 用circlize包绘制circos-plot
  2. 乱查征信,贷款不想要了吗?
  3. win7查看tomcat端口_想研究Tomcat性能调优,看这篇就够了
  4. 14-4 单任务版爬虫的架构
  5. 数据分析之Pandas(一) 学习资料汇总
  6. 2018年视频云服务市场格局进入整合阶段,阿里云视频云位居市场竞争力领导者的位置... 1
  7. 计算一条3d空间直线和一个3d空间平面的交点
  8. 一个人磊个小山包,与大家磊同一个小山包
  9. (三)云计算技术学习--OpenStack之KeyStone
  10. 微信点餐 创建订单报外键错误
  11. Matlab画图,坐标轴范围设置和间隔设置
  12. 直播源 直播地址 测试地址 http rtsp rtmp hls 短视频测试地址
  13. C#毕业设计——基于C#+asp.net+sqlserver的交通信息网上查询系统设计与实现(毕业论文+程序源码)——交通信息网上查询系统
  14. 华为数字化转型之道第四讲
  15. 「SDUDOC」个人总结报告
  16. 云服务器几核CPU够用
  17. 一小段经历后的感想和自述。
  18. UML 工具: JUDE 5.5.2
  19. 恰当的活法――有感于《杜拉拉升职记》
  20. Direcxt11教程八之FontEngine(字体实现)

热门文章

  1. 冯·卡门:用数学武装工程科学
  2. 邻接表存储图利用BFS遍历
  3. 数据中台技术及业务发展史与未来趋势展望
  4. Flink 与 Hive 的磨合期
  5. RabbitMQ 的延时队列和镜像队列原理与实战
  6. 基于Tablestore管理海量快递轨迹数据架构实现
  7. 利用blink+MQ实现流计算中的超时统计问题
  8. 支付宝客户端架构分析:自动化日志收集及分析
  9. 云原生数据库如何打造业务弹性
  10. 融资 6 亿元后,端点科技将致力于类SaaS化软件服务