Java基础(五) Java日期时间,
分享于 点击 30663 次 点评:94
Java基础(五) Java日期时间,
Java 日期时间
1.java.util 包提供了 Date 类来封装当前的日期和时间
获取当前日期时间
Java中获取当前日期和时间很简单,使用 Date 对象的 toString() 方法来打印当前日期和时间,如下所示:
public class Datedemo {
public static void main(String[] args) {
//初始化Date对象
Date date =new Date();
// 使用 toString() 函数显示日期时间
System.out.println(date.toString());
}
}
编译结果为:
**Sat Oct 27 14:43:53 CST 2018**
2格式化日期
SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。例如:
public class Datedemo {
public static void main(String[] args) {
Date date =new Date();
//SimpleDateFormat属于DateFormat子类
DateFormat ft =new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(ft.format(date));
}
}
以上实例编译运行结果如下:
2018-10-27 02:47:47
DateFormat ft =new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
上面代码确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 24 小时制,而 hh 是 12 小时制。 SimpleDateFormat属于DateFormat子类
3.Java 休眠(sleep)
sleep()使当前线程进入停滞状态(阻塞当前线程),让出CPU的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时间给其他线程执行的机会
public class Sleeodate {
public static void main(String[] args) {
try {
System.out.println(new Date()+"\n");
Thread.sleep(1000*3); //休眠3秒
System.out.println(new Date()+"\n");
} catch (Exception e) {
}
}
输出结果为
Sat Oct 27 15:04:49 CST 2018
Sat Oct 27 15:04:52 CST 2018
4.测量2个时间差
public class Datecha {
public static void main(String[] args) {
try {
long start=System.currentTimeMillis();
System.out.println(new Date( ) + "\n");
Thread.sleep(5*60*10);
System.out.println(new Date( ) + "\n");
long end = System.currentTimeMillis( );
long differ=end-start;
System.out.println("2者的时间差为"+differ);
} catch (Exception e) {
System.out.println(e);
}
}
}
输出结果为,时间相差3秒
Sat Oct 27 15:12:50 CST 2018
Sat Oct 27 15:12:53 CST 2018
2者的时间差为3010
4.使用Calendar类
如何才能设置和获取日期数据的特定部分呢,比如说小时,日,或者分钟? 需要使用Calendar 类。
Calendar类的功能要比Date类强大很多,而且在实现方式上也比Date类要复杂一些。
Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可,如下:
public class CalendarDate1 {
public static void main(String[] args) {
Calendar c1 = Calendar.getInstance();
// 获得年份
System.out.println(c1.get(Calendar.YEAR));
// 获得年份
int year = c1.get(Calendar.YEAR);
System.out.println(year);
// 获得月份
int month = c1.get(Calendar.MONTH) + 1;
System.out.println(month);
// 获得日期
int date = c1.get(Calendar.DATE);
System.out.println(date);
// 获得小时
int hour = c1.get(Calendar.HOUR_OF_DAY);
System.out.println(hour);
// 获得分钟
int minute = c1.get(Calendar.MINUTE);
System.out.println(minute);
// 获得秒
int second = c1.get(Calendar.SECOND);
System.out.println(second);
// 获得星期几(注意(这个与Date类是不同的):1代表星期日、2代表星期1、3代表星期二,以此类推)
int day = c1.get(Calendar.DAY_OF_WEEK);
System.out.println(day);
}
}
运行结果如下:
2018
2018
10
27
15
44
26
7
参考资料:菜鸟教程,Java时间还有JDK版本的区分,后面再进行整理
相关文章
- 暂无相关文章
用户点评