网站首页 > java教程 正文
Date类
Date类概述
Date类是一个日期类
通过该类可以获得时间和日期信息
Date类构造方法
Date() 获得当前的系统时间对象
Date(long time) 根据指定的毫秒值创建日期对象
Date类的成员方法
long getTime(); 获得当前时间对象的毫秒值
示例
import java.util.Date;
public class DateDemo {
public static void main(String[] args){
// 创建日期对象
Date d = new Date();
// Wed May 22 12:09:45 CST 2024
// 2024-05-22 12:09:45 ==> DateFormat
// 2024-05-22 12:09:45
System.out.println(d);
// 获得当前时间的毫秒值: 1716350985513
System.out.println(d.getTime());
// 根据毫秒值创建日期对象
Date date = new Date(19495498424928L);
// Mon Oct 15 16:13:44 CST 2587
System.out.println(date);
}
}
DateFormat类
DateFormat类概述
是一个日期格式化类,是一个抽象类,不能直接创建该类对象,只能创建子类对象。
DateFormat类常用子类
SimpleDateFormat
SimpleDateFormat类常见操作
将日期对象格式为字符串
将字符串格式化为日期对象
SimpleDateFormat类构造方法
SimpleDateFormat() 创建日期格式化对象,使用默认的日期模式
SimpleDateFormat(String pattern) 根据指定的日期模式创建日期格式化对象
SimpleDateFormat类成员方法
String format(Date d) 将日期对象转换为字符串
Date parse(String str); 将字符串转换为日期对象
void applyPattern(String pattern) 修改日期模式
?
日期模式
yyyy 年
MM 月
dd 日
HH 时 hh:12小时制 HH:24小时制
mm 分
ss 秒
日期对象格式为字符串示例
/*
日期对象转字符串的步骤
创建SimpleDateFormat日期格式化对象并指定日期模式
调用格式化对象的format方法传递日期对象获得字符串
*/
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatDemo {
public static void main(String[] args){
// 获得当前系统日期对象
Date d = new Date();
// 创建日期格式化对象
// 2024/05/22 12:17:53
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
// 2024-05-22
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
// 2024年05月22日 12时17分53秒
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
// 创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat();
// 修改日期模式
sdf.applyPattern("yyyy-MM-dd");
// Date ==> String
// 2024/05/22 中午12:17
String dStr = sdf.format(d);
System.out.println(dStr);
// 再次修改日期模式
sdf.applyPattern("HH:mm:ss");
System.out.println(sdf.format(d));
}
}
字符串转日期对象
/**
字符串转换为日期对象的步骤
创建日期格式化对象并指定日期模式
调用日期格式化对象的parse方法传递日期对象获得字符串
?
字符串转换为日期对象注意事项
创建日期格式对象时指定的日期模式要和字符串的日期格式一致
*/
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatDemo01 {
public static void main(String[] args) throws ParseException {
// 日期字符串
String dateStr = "2024-05-22 18:30:15";
// 创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// String ==> Date
Date date = sdf.parse(dateStr);
System.out.println(date);
}
}
Calendar类
常用的方法
Calendar类概述
是一个日历类,也是一个抽象类,不能直接创建该类对象,只能创建子类对象
通过该类也可以获得时间和日期信息
如何获得日历对象
通过调用Calendar类的静态方法获得,静态方法如下
static Calendar getInstance()
Calenar类的成员方法
int get(int field); 根据指定的日历字段获得对应的值
void set(int field,int value);
修改指定日历字段的值为指定值
void add(int field,int value);
将指定日历字段的值在当前值的基础上偏移一个值,正数向后偏移,负数向前偏移
Date getTime(); 获得日期对象
long getTimeInMillis() 获得当前时间毫秒值
void set(int year,int month,int date) 修改年月日
示例
import java.util.Calendar;
public class CalendarDemo {
public static void main(String[] args){
// 获得日历对象
Calendar c = Calendar.getInstance();
// c ==> java.util.GregorianCalendar
System.out.println(c);
// 获得毫秒值
System.out.println(c.getTime().getTime());
System.out.println(c.getTimeInMillis());
// set:修改指定日历字段的值
c.set(Calendar.YEAR,2025);
c.set(Calendar.MONTH,3);
c.set(Calendar.DATE,16);
// 修改年月日
c.set(2025,2,8);
// add:将指定日历字段的值在当前值的基础上偏移一个值,正数向后偏移,负数向前偏移
c.add(Calendar.YEAR,-1);
// 获得年
System.out.println(c.get(Calendar.YEAR));
// 获得月
System.out.println(c.get(Calendar.MONTH)+1);
// 获得日
System.out.println(c.get(Calendar.DATE));
// 获得时
System.out.println(c.get(Calendar.HOUR));
// 获得分
System.out.println(c.get(Calendar.MINUTE));
// 获得秒
System.out.println(c.get(Calendar.SECOND));
}
}
猜你喜欢
- 2024-10-24 没想到YYYY的格式化日期也有坑(yyyy时间格式)
- 2024-10-24 线程不安全的 SimpleDateFormat(线程不安全的原因)
- 2024-10-24 java DateFormat(javadateformat用法)
- 2024-10-24 FastJson时间格式化问题-踩坑集锦
- 2024-10-24 标签—时间格式化(添加时间标签)
- 2024-10-24 Java中常用类—格式化类 #java基础
- 2024-10-24 Go语言进阶之路(九):时间处理和格式化输出
- 2024-10-24 日期格式化跨年bug,是否与你不期而遇?
- 2024-10-24 JDK1.7和JDK1.8中日期时间使用和处理的不同「Java工程师必读」
- 2024-10-24 深度思考:JDK8中日期类型该如何使用?
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)