您的位置:首页 > 编程语言 > Java开发

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

2014-08-14 19:48 302 查看
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类时只用到了一些常用的方法,其他方法可以自己尝试,毕竟自己学会的才真正是自己的.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐