Date类获取日期的方法失效的解决办法

简介: Java 学习了一段时间后,就习惯了在实例化一个类后,喜欢调用该对象的get或者set方法.      在一次学习中接触了Date类,这时发现 get和set方法有时不是那么好用的. 下面重演我学习过程中出现的错误,及解决的办法: 在学习Date类时,习惯性的用get方法调用Date()的年月日,发现不怎么好用了, Date date=newDate(); Stringyear=d

Java 学习了一段时间后,就习惯了在实例化一个类后,喜欢调用该对象的get或者set方法.      在一次学习中接触了Date类,这时发现 get和set方法有时不是那么好用的.

下面重演我学习过程中出现的错误,及解决的办法:

在学习Date类时,习惯性的用get方法调用Date()的年月日,发现不怎么好用了,

Date date=newDate();

Stringyear=date.getYear();

很明显在getYear()上有一条删除线,而且在myeclipse 中还报错,点击错误

Multiplemarkers at this line

  - The method getYear() from thetype Date is deprecated,原来是这个方法被弃用了.

尝试了其他的get方法如: getDate()getDay()getHours()getMinutes()getMonth()getSeconds()等好几个get方法以及对应的set方法都弃用了,那在myeclipse中不能用这些方法,我怎么用Date()这个类呢.

    后来通过网上搜找,终于找到了解决的办法:java.text.SimpleDateFormat这是专门设置Date内容显示格式的类.      

Date date=new Date();

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");

String time=sdf.format(date);

System.out.println(time);

 

通过date对象获取到当前的时间, 然后再实例化SimpleDateFormat类时,为其设置日期显示格式"yyyy-MM-dd HH:mm:ss" ,通过第三句代码,将date对象格式化并转化为String 类型输出,就会打印出常见格式的日期了: 2014-08-14 19:48:13

如果仅仅想要获得年,可以将SimpleDateFormat sdf=newSimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 中的"yyyy-MM-dd HH:mm:ss" 改为”yyyy”,这样得到的就只是年了.

其他的获得月、日、周、小时、分钟等的格式与年的相似,并且可以相互组合使用。

字母与代表的意思如下表内容所示。

字母

日期或时间元素

表示

示例

G

Era 标志符

Text

AD

y

Year

1996; 96

M

年中的月份

Month

July; Jul; 07

w

年中的周数

Number

27

W

月份中的周数

Number

2

D

年中的天数

Number

189

d

月份中的天数

Number

10

F

月份中的星期

Number

2

E

星期中的天数

Text

Tuesday; Tue

a

Am/pm 标记

Text

PM

H

一天中的小时数(0-23)

Number

0

k

一天中的小时数(1-24)

Number

24

K

am/pm 中的小时数(0-11)

Number

0

h

am/pm 中的小时数(1-12)

Number

12

m

小时中的分钟数

Number

30

s

分钟中的秒数

Number

55

S

毫秒数

Number

978

z

时区

General time zone

Pacific Standard Time; PST; GMT-08:00

Z

时区

RFC 822 time zone

-0800

 

 

知道了通过SimpleDateFormat格式化日期的方法,就再也不怕日期不好获得了。


在使用Date类   和 SimpleDateFormat类时只用到了一些常用的方法,其他方法可以自己尝试,毕竟自己学会的才真正是自己的.

相关文章
|
2月前
|
运维 大数据 Shell
时间命令date,你真的会用了吗?
时间命令date,你真的会用了吗?
41 0
|
8月前
|
存储 缓存 安全
TimeZone-改变JVM默认时区是否影响log4j打印日志中的日期时间?
TimeZone-改变JVM默认时区是否影响log4j打印日志中的日期时间?
191 1
|
9月前
|
fastjson Java
fastjson全局日期序列化设置导致JSONField无效
fastjson通过代码指定全局序列化返回时间格式,导致使用JSONField注解标注属性的特殊日期返回格式失效
101 0
|
10月前
|
JSON 数据格式
对象转为json字符串,时间变为时间戳的解决方法
对象转为json字符串,时间变为时间戳的解决方法
438 0
|
12月前
|
SQL Java 数据库连接
java 自动设置结束时间为n个工作日后的日期
java 自动设置结束时间为n个工作日后的日期
111 0
日期获取方法
日期获取方法
149 0
|
关系型数据库 MySQL
MySQL DATE字段,默认为CURDATE()不是DATETIME
MySQL DATE字段,默认为CURDATE()不是DATETIME
190 0
|
Java API
java如何获取、当前日期和时间、几种方法new Date()
java如何获取、当前日期和时间、几种方法new Date()
936 0
|
SQL 前端开发 fastjson
使用 fastjson 转换 Date 格式的数据,默认是时间戳,更改为 年-月-日 的方法
使用 fastjson 转换 Date 格式的数据,默认是时间戳,更改为 年-月-日 的方法
809 0
|
JavaScript
JS之获取当前时间 增加 减少天数,并格式化返回(在Date原型上挂载方法实现)
JS之获取当前时间 增加 减少天数,并格式化返回(在Date原型上挂载方法实现)
180 0
JS之获取当前时间 增加 减少天数,并格式化返回(在Date原型上挂载方法实现)