Java——时间和日期处理
Date
Date date = new Date();
获取时间
Date d = new Date();
// Date d2=new Date(System.currentTimeMillis()-24*60*60*1000);
System.out.println(d);
// System.out.println(System.currentTimeMillis());
Calender
- SimpleDateFormat:规范日期格式
设置当前基准时间
Date d = new Date();
//Calendar
Calendar cal = Calendar.getInstance();
//设置当前基准时间
cal.setTime(d);
// set:field设置的时间属性,value是设置的值
//cal.set(Calendar.DATE, 19);
// add方法:增加或减少时间值
cal.add(Calendar.DATE, 2);
//System.out.println(cal.getTime());
格式化时间
SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
System.out.println(format.format(cal.getTime()));
计算两个年份之间的闰年数量
public static boolean isLeapYear(int year){
return ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ;
}
public static void main(String[] args) {
Date d = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(d);
SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日");
System.out.println(format.format(cal.getTime()));
System.out.println("=======40天后取写真========");
cal.add(Calendar.DATE, 40);
System.out.println(format.format(cal.getTime()));
System.out.println("======闰年个数========");
int count=0;
for(int i=1970;i<2011;i++){
if(isLeapYear(i)){
System.out.println(i+"是闰年");
count++;
}
}
System.out.println("闰年数量:"+count);
}
时间和日期处理的综合练习
public static void sub(){
System.out.println("两个日期为:2014-3-8和2017-8-17");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
format.setLenient(false);
try {
Date date1= format.parse("2014-3-8");
Date date = format.parse("2017-8-17");
long day =(date.getTime()-date1.getTime())/(1000*60*60*24);
System.out.println("相差天数:"+day);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//毫秒转日期
public static void change(){
Scanner sc= new Scanner(System.in);
Date date = new Date();
// Long time = date.getTime();
// System.out.println("当前日期的毫秒数:"+time);
System.out.println("请输入一个毫秒数:");
Long time = sc.nextLong();
Date d = new Date(time);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println("转换成日期:"+sdf.format(d));
}
public static void today(){
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("今天日期:"+sdf.format(date));
}
public static void subAdd(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(date);
System.out.println("当前的日期:"+sdf.format(date));
cal.add(Calendar.DATE, 10);
System.out.println("加了10天后的日期:"+sdf.format(cal.getTime()));
cal.add(Calendar.DATE, -8);
System.out.println("减去8天后的日期:"+sdf.format(cal.getTime()));
}
public static void addSub(){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
format.setLenient(false);
Scanner sc = new Scanner(System.in);
System.out.println("请输入指定日期:");
try {
String str = sc.next();
Date date1= format.parse(str);
Calendar cal = Calendar.getInstance();
cal.setTime(date1);
cal.add(Calendar.DATE, 10);
System.out.println("加了10天后的日期:"+format.format(cal.getTime()));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//日期格式化
public static void sdf(){
SimpleDateFormat format = new SimpleDateFormat("北京时间:yy年MM月dd日,为您报时:HH:mm:ss");
Date d = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(d);
System.out.println(format.format(cal.getTime()));
}
public static void main(String[] args) {
System.out.println("===========返回两个日期之间相差的天数================");
sub();
System.out.println("===========毫秒转日期================");
change();
System.out.println("===========返回今天的日期=============");
today();
System.out.println("===========返回当前日期加减后的日期=============");
subAdd();
System.out.println("===========返回指定日期的加减天数=============");
addSub();
System.out.println("===========日期格式化=============");
sdf();
}
Java——时间和日期处理的更多相关文章
- [原创]java WEB学习笔记81:Hibernate学习之路--- 对象关系映射文件(.hbm.xml):hibernate-mapping 节点,class节点,id节点(主键生成策略),property节点,在hibernate 中 java类型 与sql类型之间的对应关系,Java 时间和日期类型的映射,Java 大对象类型 的 映射 (了解),映射组成关系
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- java时间和日期类型
在java中,代表时间和日期的类型包括:java.util.Date和java.util.Calendar,此外,在JDBC API中还提供了3个扩展类,java.UtilDate类的子类:java. ...
- hibernate Java 时间和日期类型的 Hibernate 映射
基础知识: 在 Java 中, 代表时间和日期的类型包含: java.util.Date 和 java.util.Calendar. 此外, 在 JDBC API 中还提供了 3 个扩展了 java. ...
- hibernate Java 时间和日期类型 Hibernate 制图
基础知识: 于 Java 于, 型表示的时间和日期包含: java.util.Date 和 java.util.Calendar. 外, 在 JDBC API 中还提供了 3 个扩展了 java.ut ...
- Java 时间、日期类
1. System类 currentTimeMillis():返回当前时间的long型值.此long值是从1970年1月1日0点0分00秒开始到当前的毫秒数. 此方法常用来计算时间差. 2. Date ...
- Java 时间和日期类型的 Hibernate 映射
以下情况下必须显式指定 Hibernate 映射类型 一个 Java 类型可能对应多个 Hibernate 映射类型. 例如: 如果持久化类的属性为 java.util.Date 类型, 对应的 Hi ...
- java中获取日期和时间的方法总结
1.获取当前时间,和某个时间进行比较.此时主要拿long型的时间值. 方法如下: 要使用 java.util.Date .获取当前时间的代码如下 Date date = new Date(); da ...
- java Joda-Time 对日期、时间操作
任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径.使用 JDK 完成这项任务将非常痛苦和繁琐.现在来看看 Joda Time,一 ...
- Java 时间日期系列目录
下面是Java的时间和日期相关文章目录: 01. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar 02. ...
随机推荐
- SQL语句实现增删改查
查询语句SELECT *FROM mydriect WHERE id=1; 删除语句DELETE FROM mydriect WHERE id=1; 修改语句UPDATE mydriect SET 自 ...
- 数据库零基础之---了解数据库的事务[ACID]
事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功. 我们先举一个例子来描述一下事务: 假设要张三通过银行给李四进行转账1000元钱,张三原有余额10000元整,李四有人民币 ...
- ES6 for of循环, 可迭代接口,实现可迭代接口
在for of循环出现之前,for循环适合遍历普通的数组,for in循环比较适合遍历键值对,遍历数组对象的foreach方法,但是这些遍历 都有一定的局限性,所以在ES6之后引入了统一的遍历方式 f ...
- hive 将hive表数据查询出来转为json对象和json数组输出
一.将hive表数据查询出来转为json对象输出 1.将查询出来的数据转为一行一行,并指定分割符的数据 2.使用UDF函数,将每一行数据作为string传入UDF函数中转换为json再返回 1.准备数 ...
- js概念和ECMAScript
概念 就是一门浏览器客户端的脚本语言 运行在客户端浏览器中的,每一个浏览器都有JavaScript的解析引擎. 脚本语言,不需要编译,直接就可以被浏览器解析执行. 好处: 可以增强一些用户的 ...
- UnRAID_6.8.2_配置_设置
UnRAID_6.8.2_配置_设置 转载注明来源: 本文链接 来自osnosn的博客,写于 2020-10-05. 参考: UnRAID download Getting_Started Offic ...
- centos 8.x系统配置chrony时间同步服务
redhat/centos 7.x默认使用的时间同步服务为ntp服务,但是从redhat/centos 8开始在官方的仓库中移除了ntp软件,换成默认的chrony进行时间同步的服务,虽然也可以通过添 ...
- Codeforces Round #695 (Div. 2)
比赛地址 A (水题) 题目链接 题目: 给出\(n\)个面板,每个面板初始时间相同,每过1s面板上数字会加1(数字在\(0\sim9\)循环播放),任意时刻选择一个面板\(x\)使他的时间停止,其他 ...
- 初学java进制转换方面补充学习
进制转换: 基础: 二进制用的数为:0/1 八进制用的数为:0/1/2/3/4/5/6/7 十进制用的数为:0/1/2/3/4/5/6/7/8/9 十六进制用的数为:0/1/2/3/4 ...
- 最新最简洁Spring Cloud Oauth2.0 Jwt 的Security方式
因为Spring Cloud 2020.0.0和Spring Boot2.4.1版本升级比较大,所以把我接入过程中的一些需要注意的地方告诉大家 我使用的版本是Spring boot 2.4.1+Spr ...