java.util包中提供的和日期时间相关的类有Date类、Calendar类和SimpleDateFormat类等。

方法一:new Date()

Date类对象用来表示日期和时间,该类提供了一系列操作日期和时间各组成部分的方法,Date类中使用最多的是获取系统当前的日期和时间,

如 Date date=new Date();这句代码是使用当前时间创建日期对象

示例代码如下:

public static void main(String[] args) {
//使用Date创建日期对象
Date date=new Date();
System.out.println("当前的日期是------>"+date);
}

控制台输入的结果:

当前的日期是------>Fri Nov 30 19:40:37 CST 2018

但是我们看到,输出的结果是格林威治时间格式,和我们平常看到的不一样,对于这种时间格式我们可以使用格式化时间日期类----SimpleDateFormat来格式化成我们想要的时间,具体实现代码如下:

public static void main(String[] args) {
//使用Date创建日期对象
Date date=new Date();
System.out.println("当前的日期是------>"+date);
/**
* 创建格式化时间日期类
*构造入参String类型就是我们想要转换成的时间形式
*/
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("格式化后的时间------->"+format.format(date));
}

控制台输出的结果

当前的日期是------>Fri Nov 30 20:01:15 CST 2018

格式化后的时间------->2018-11-30 20:01:15

方法二: Calendar.getInstance()

Calendar类也是用来操作日期和时间的类,它可以看作是Date类的一个增强版,Calendar类提供了一组方法,允许氢一个以毫秒为单位的时间转换成年、月、日、时、分、秒。可以把Calendar类当作是万年历,默认显示的是当前时间,当然也可以查看其他时间。

示例代码如下:

//创建Calendar对象
Calendar cal=Calendar.getInstance();
//用Calendar类提供的方法获取年、月、日、时、分、秒
int year =cal.get(Calendar.YEAR); //年
int month =cal.get(Calendar.MONTH)+1; //月 默认是从0开始 即1月获取到的是0
int day =cal.get(Calendar.DAY_OF_MONTH); //日,即一个月中的第几天
int hour =cal.get(Calendar.HOUR_OF_DAY); //小时
int minute=cal.get(Calendar.MINUTE); //分
int second=cal.get(Calendar.SECOND); //秒
//拼接成字符串输出
String date=year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second;
System.out.println("当前时间是---->"+date);

运行后控制台的结果

当前时间是---->2018-11-30 20:12:30

方法三:System.currentTimeMillis()

long now=System.currentTimeMillis(); //获取出来的是当前时间的毫秒值
//把毫秒值转换成时间格式
Date d=new Date();
d.setTime(now);
/**
* 创建格式化时间日期类
*构造入参String类型就是我们想要转换成的时间形式
*/
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("格式化后的时间------->"+format.format(d));

运行后控制台的结果

格式化后的时间------->2018-11-30 20:15:31