java Dated Dateformat Calendar
Date类概述
类Date表示特定的瞬间,精确到毫秒。1000毫秒=1秒
时间的原点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0
注意:时间和日期的计算,必须依赖毫秒值
long d =System.currentTimeMillis(); system.currentTimeMillis()获取当前的毫秒值
System.out.println(d);
构造函数
Date d1 =new Date(d);
System.out.println(d1);
Date类常用方法
long d =System.currentTimeMillis(); 获取当前的毫秒数给d,用getTime方法转成毫秒数
Date d1 =new Date();
System.out.println(d1.getTime());
DateFormat类
DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat类)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。
日期格式
构造方法
DateFormat类方法
SimpleDateFormat sim =new SimpleDateFormat("yyyy-MM-d HH:mm:ss"); 创建日期格式类型
Date d =new Date(); 获取当前日期
String str =sim.format(d); 把当前日期传进来,调用format方法,并赋值给str
System.out.println(str);
l DateFormat类的作用:即可以将一个Date对象转换为一个符合指定格式的字符串,也可以将一个符合指定格式的字符串转为一个Date对象。
指定格式的具体规则我们可参照SimpleDateFormat类的说明,这里做简单介绍,规则是在一个字符串中,会将以下字母替换成对应时间组成部分,剩余内容原样输出:
l 当出现y时,会将y替换成年
l 当出现M时,会将M替换成月
l 当出现d时,会将d替换成日
l 当出现H时,会将H替换成时
l 当出现m时,会将m替换成分
l 当出现s时,会将s替换成秒
DateFormat类常用方法
SimpleDateFormat sim =new SimpleDateFormat("yyyy-MM-dd");
String d ="2018-05-25"; 创建字符串类型的日期格式
Date dd =sim.parse(d); 调用parse方法传值字符串赋值给dd
System.out.println(dd);
l format方法,用来将Date对象转换成String
l parse方法,用来将String转换成Date(转换时,该String要符合指定格式,否则不能转换)。
Calendar类
Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,将语言敏感内容处理好,再返回子类对象
Calendar类静态方法
Calendar c =Calendar.getInstance();
System.out.println(c); 返回当前日历
Calenar常用方法
YEAR 年
MONTH 月,从0开始算起,最大11;0代表1月,11代表12月。
DATE 天
HOUR 时
MINUTE分
SECOND秒
Calendar c =Calendar.getInstance(); 获取日历,用get方法获取月份
System.out.println(c.get(Calendar.YEAR));
Calendar c =Calendar.getInstance();
c.add(Calendar.YEAR, 3); //add偏移,向后3年。 打印输出2021年
System.out.println(c.get(Calendar.YEAR));
Calendar c =Calendar.getInstance();
c.set(Calendar.YEAR, 2022); //可以一个一个属性的改,也可以一次改好多个属性
c.set(2020, 7, 7, 7, 7, 7);
System.out.println(c.get(Calendar.YEAR));
Calendar c =Calendar.getInstance(); 将日历对象转成日期对象
System.out.println(c.getTime());
1.1 注意事项
西方星期的开始为周日,中国为周一。
在Calendar类中,月份的表示是以0-11代表1-12月。
日期是有大小关系的,时间靠后,时间越大。
小练习
求出自己已经出生多少天
long a=System.currentTimeMillis(); //获取当前的毫秒数
Calendar ca =Calendar.getInstance(); //获取当前的日历,然后改成出生日期
ca.set(1996, 8,20);
Date b =ca.getTime(); //将这个日历转成日期格式,再转成毫秒数
long c =b.getTime();
long d =(a-c)/24/60/60/1000; //毫秒数相减,当前的毫秒数前去出生的
System.out.println(d);*/
java Dated Dateformat Calendar的更多相关文章
- 常用类一一时间处理相关类一一java.util.Tomezone(java.util.Calendar , java.util.Date , java.text.DateFormat)
时间处理相关类 时间是一个一维的东东.所以,我们需要一把刻度尺来区表达和度量时间.在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一). ...
- java日期处理 calendar 和date
抄的人家的,仅作学习使用. java Date获取 年月日时分秒 package com.util; import java.text.DateFormat; import java.ut ...
- Java Date 和 Calendar
Java 语言的Date(日期),Calendar(日历),DateFormat(日期格式)组成了Java标准的一个基本但是非常重要的部分.日期是商业逻辑计算一个关键的部分,所有的开发者都应该能够计算 ...
- java.text.DateFormat 多线程并发问题
在日常开发中,java.text.DateFormat 应该算是使用频率比较高的一个工具类,经常会使用它 将 Date 对象转换成字符串日期,或者将字符串日期转化成 Date 对象.先来看一段眼熟的代 ...
- java.text.DateFormat 日期格式化
一: java.text.DateFormat <%@ page language="java" contentType="text/html; charset=u ...
- Java Date and Calendar examples
Java Date and Calendar examples This tutorial shows you how to work with java.util.Date and java.uti ...
- java中Dateformat类的详细使用(详解)
DateFormat其本身是一个抽象类,SimpleDateFormat 类是DateFormat类的子类,一般情况下来讲DateFormat类很少会直接使用,而都使用SimpleDateFormat ...
- Java中的Calendar方法
/** * @Title:JavaDate.java * @Package:com.yhd.chart.model * @Description:Java中的Calendar总结 * @author: ...
- Java中的Calendar日历用法详解
第一部分 Calendar介绍 public abstract class Calendar implements Serializable, Cloneable, Comparable<Cal ...
随机推荐
- centos 5.3 安装(samba 3.4.4)
centos 5.3 安装(samba 3.4.4) 博客分类: 操作系统 Linux 随着Linux的普及,如何共享Linux下的文件成为用户关心的问题.其实,几乎所有的Linux发行套件都提供 ...
- innobackupex 简单使用笔记
innobackupex 选项介绍 --backup 备份 --apply-log 应用日志 --move-back --copy-back 恢复 --export 只导出单个表.前提是使用in ...
- Java编程语言下Selenium 鼠标悬停以及右击操作
// 基于Actions类创建一个对象 Actions action = new Actions(driver); // 鼠标悬停在药渡公司全称字段上 action.moveToElement(Yao ...
- 手把手教你全家桶之React(二)
前言 上一篇已经讲了一些react的基本配置,本遍接着讲热更新以及react+redux的配置与使用. 热更新 我们在实际开发时,都有用到热更新,在修改代码后,不用每次都重启服务,而是自动更新.并而不 ...
- python访问mysql
1,下载mysql-connector-python-2.0.4 pythoin访问mysql需要有客户端,这个就是连接mysql的库 解压后如下图: 双击lib 以windows为例 把mysql ...
- Oracle数据库表分区
一.Oracle数据库表分区概念和理解 1.1.已经存在的表没有方法可以直接转化为分区表. 1.2.不在分区字段上建立分区索引,在别的字段上建立索引相当于全局索引.效率 ...
- java并发之TimeUnit理解
TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread.sleep(),在很长一段时间里Thread的sle ...
- 构建基于Netty 的HTTP/HTTPS 应用程序
HTTP/HTTPS是最常见的协议套件之一,并且随着智能手机的成功,它的应用也日益广泛,因为对于任何公司来说,拥有一个可以被移动设备访问的网站几乎是必须的.这些协议也被用于其他方面.许多组织导出的用于 ...
- Spring Cloud分布式微服务系统中利用redssion实现分布式锁
在非分布式系统中要实现锁的机制很简单,利用java.util.concurrent.locks包下的Lock和关键字synchronized都可以实现.但是在分布式系统中,如何实现各个单独的微服务需要 ...
- 传统IT公司/创业公司/互联网大公司的offer如何选择?[转载+原创]
背景介绍: 第一家工作的公司是一家跨国外企安全公司, 骄傲的称自己不是互联网公司而是传统软件公司, 第二家公司是当下最热的知识分享社区, 创业公司. 第三家公司是挤走谷歌, 曾一度称霸中国的搜索引擎公 ...