javase-日期的处理

java中时间日期处理

在用java做时间处理,需要使用:

  • java.util.Date 类表示特定的的瞬间,精确到毫秒。
  • java.text.DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。
  • java.text.SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期–>文本),解析(文本–>日期)和规范化。
  • java.util.Calendar 类是一个抽象类,它为特定瞬间与日历字段之间的转换提供一些方法,并操作日历字段提供一些方法。
Date 的使用

常用构造器与方法:

  • Date() :分配Date来初始化对象。
  • Date(long date) :使用指定毫秒数的时间来创建Date初始化对象。
  • String getTime() :返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
Date date = new Date();
Date date_1 = new Date(System.currentTimeMillis());
//date 与 date_1 打印的都是Mon Mar 25 09:52:45 CST 2019 默认的格式
long date_l = date.getTime();//返回的是1970 年 1 月 1 日到至今的时间的毫秒数
DateFormat 的使用

常用构造器与方法:

  • String format(Date date) :将一个 Date 格式化为日期/时间字符串。
  • Date parse(String source) :从给定字符串的开始解析文本,以生成一个日期。
SimpleDateFormat 的使用

常用构造器与方法:

  • SimpleDateFormat() :用默认的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
  • SimpleDateFormat() :用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。

在这里插入图片描述

日期-->文本
Date date = new Date();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//自定义格式化
String str = df.format(date);//将Date格式转换为自定义的格式化时间

文本-->日期
String str = "2019-03-25 10:21:45";//自定义日期
Date date = new Date();
DateFormat df = new SimpleDateFormat("yy-MM-dd hh:mm:ss");//自定义格式化
try {
	date = df.parse(str);//解析字符串变为文本格式
} catch (ParseException e) {
	e.printStackTrace();
}
Calendar 的使用

常用构造器与方法:

  • void add(int field, int amount) :根据日历的规则,为给定的日历字段添加或减去指定的时间量。
  • Calendar getInstance() :获得子类的对象寻求更强大的功能,使用默认时区和语言环境获得一个日历。
  • int get(int field):field通过Calendar.常量类获取年月日等信息。返会给定日历字段的值。
  • void set(int field, int value) :设置日历,将给定的日历字段设置为给定值。
  • long getTimeInMills() :返回次 Calender 的时间值,以毫秒为单位。
//获取日历类的功能类
Calendar calendar = Calendar.getInstance();

//获取当前的年,月,日
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);

Calendar calendar1 = Calendar.getInstance();
//设置年,月,日
calendar1.set(2018, 4, 9, 13, 24, 7);
System.out.println(calendar1.get(Calendar.YEAR) + "年" + calendar1.get((Calendar.MONTH) + 1) + "月" + calendar1.get(Calendar.DAY_OF_MONTH) + "日");

calendar.add(Calendar.YEAR, 0);
calendar.add(Calendar.MONTH, 1);
calendar.add(Calendar.DAY_OF_MONTH, 1);
System.out.println(calendar.get(Calendar.YEAR) + "年" + calendar.get(Calendar.MONTH) + "月" + calendar.get(Calendar.DAY_OF_MONTH) + "日");
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值