java Calendar 入门【转】
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar c = Calendar.getInstance();
System.out.println(sdf.format(c.getTime()));
c.add(Calendar.DAY_OF_YEAR, -1);
System.out.println(sdf.format(c.getTime()));
c.set(2018, 12, 20);// 月份是从0开始的,所以11表示12月
c.add(Calendar.YEAR, -1); // 年份减1
c.add(Calendar.YEAR, +1); // 年份加1
c.add(Calendar.MONTH, -1);// 月份减1
c.add(Calendar.DATE, -1);// 日期减1
c.set(Calendar.HOUR, 1);//设置时为 13点
c.set(Calendar.MINUTE, 45);//设置分为 45
c.set(Calendar.SECOND, 30);//设置 秒为30
System.out.println(sdf.format(c.getTime()));
set(int field, int value) - 是用来设置"年/月/日/小时/分钟/秒/微秒"等值
add(int field, int amount) add 可以对 Calendar 的字段进行计算。如果需要减去值,那么使用负数值就可以了,如 add(field, -value)。 可以自动修正
/**
* 取指定时间的日期(只剩年月日),把时分秒置0
* @param date
* @return
*/
public static final Date getCurrentDay(Date date) {
Calendar lastDate = Calendar.getInstance();
lastDate.setTime(date);
int yearInt = lastDate.get(Calendar.YEAR);
int monthInt = lastDate.get(Calendar.MONTH);
int dateInt = lastDate.get(Calendar.DATE);
lastDate.set(5, 1);
lastDate.set(Calendar.YEAR, yearInt);
lastDate.set(Calendar.MONTH, monthInt);
lastDate.set(Calendar.DATE , dateInt);
lastDate.set(Calendar.HOUR_OF_DAY, 0);
lastDate.set(Calendar.MINUTE, 0);
lastDate.set(Calendar.SECOND, 0);
lastDate.set(Calendar.MILLISECOND, 0);
return lastDate.getTime();
}
java Calendar 入门【转】的更多相关文章
- 《java从入门到精通》学习记录
目录 <Java从入门到精通>学习记录 3 基础的基础部分: 3 一. 常量与变量 3 1. 掌握: 3 (1) .常量与变量的声明方式: 3 (2) .变量的命名规则: 3 (3) .变 ...
- Java 快速入门-06-JDK 目录文件说明
Java 快速入门-06-JDK 目录文件说明 JDK:开发环境,搞技术的人或者应用服务器使用 JRE:运行环境,如浏览器插件或者Swing界面的客户端等最终用户需要使用 JDK自含一个JRE,并依赖 ...
- 自学 Java 怎么入门
自学 Java 怎么入门? 595赞同反对,不会显示你的姓名 给你推荐一个写得非常用心的Java基础教程:java-basic | 天码营 这个教程将Java的入门基础知识贯穿在一个实例中,逐 ...
- Java Calendar 类的时间操作
Java Calendar 类的时间操作 标签: javaCalendar时间Date 2013-07-30 17:53 140401人阅读 评论(7) 收藏 举报 分类: 所有(165) Java ...
- 《JAVA 从入门到精通》 - 正式走向JAVA项目开发的路
以前很多时候会开玩笑,说什么,三天学会PHP,七天精通Nodejs,xx天学会xx ... 一般来说,这样子说的多半都带有一点讽刺的意味,我也基本上从不相信什么快速入门.我以前在学校的时候自觉过很多门 ...
- Java NIO入门(二):缓冲区内部细节
Java NIO 入门(二)缓冲区内部细节 概述 本文将介绍 NIO 中两个重要的缓冲区组件:状态变量和访问方法 (accessor). 状态变量是前一文中提到的"内部统计机制"的 ...
- 完成《Java编程入门》初稿
Java编程入门 现在的运维工程师不但要懂得集合网络.系统管理而且要和开发人员一起调试系统,社会上也需要"复合性"的运维人员,所以需要做运维的也要懂一些开发,知道软件系统接口的调试 ...
- 三、Android NDK编程预备之Java jni入门创建C/C++共享库
转自: http://www.eoeandroid.com/thread-264971-1-1.html 应网友回复,答应在两天前要出一篇创建C/C++共享库的,但由于清明节假期,跟朋友出去游玩,丢手 ...
- 二、Android NDK编程预备之Java jni入门Hello World
转自: http://www.eoeandroid.com/forum.php?mod=viewthread&tid=264543&fromuid=588695 昨天已经简要介绍了J ...
随机推荐
- @ResponseBody注解
作用 @ResponseBody注解表示该方法的返回结果直接写入HTTP response body中 原理 在使用此注解之后跳过视图处理器,将返回的对象通过适当的转换器转换为指定的格式之后,直接将数 ...
- git 出现stderr: error: bad signature fatal: index file corrupt
命令执行依次: $ rm -f .git/index $ git reset 重启即可
- Centos7 Install Kubernetes
环境搭建配置官方 k8s yum 源: cat <<EOF > /etc/yum.repos.d/virt7-docker-common-release.repo [virt7-do ...
- Android 开发中 SQLite 数据库的使用
SQLite 介绍 SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP, ...
- [luogu4072][bzoj4518][SDOI2016]征途【动态规划+斜率优化】
题目分析 Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜.所以,一段路 ...
- MVC接收列表参数
ASP.NET MVC 表单参数如果有列表时要怎么写呢. 虽然很久不用MVC了,但几乎每次遇到一次就要研究一下.然后又忘了. 其实也明白这是未完全弄清楚表单参数的传递形式,如果明白了,就知道MVC为 ...
- String Reconstruction (并查集)
并查集维护和我这个位置的字母连续的已经被填充的字母能到达的最右边的第一个还没有填充的位置,然后把这个位置填上应该填的东西,然后把这个位置和下一个位置连接起来,如果下一个位置还没有填,我就会把下一个位置 ...
- [NOI2018]你的名字(后缀自动机+线段树)
题目描述 小A 被选为了ION2018 的出题人,他精心准备了一道质量十分高的题目,且已经把除了题目命名以外的工作都做好了. 由于ION 已经举办了很多届,所以在题目命名上也是有规定的,ION 命题手 ...
- Jira配置openLdap服务器进行用户认证
测试环境 注:进过测试,Jira6.3.6和Jira7.3.8界面和配置方法相同,不过7.3.x版本默认的用户组只有jira-software-users和jira-administrators,好在 ...
- MacBook上使用ssh localhost被拒绝
最开始以为没有装sshd呢,实际上不是.又查了些方法,有些人居然把Linux上访问失败的方法直接照搬,让我建立公私钥.都没有成功.最后找到了解决方法,原来是由于苹果的安全限制,限制了这个功能. sud ...