常用java时间函数介绍
Java是一种基于对象的编程语言,是一种非常重要的计算机编程语言。Java中提供了丰富的时间函数,可以帮助程序员更加方便地处理各种时间操作。这篇文章就对常用的Java时间函数进行介绍。
1. 获取当前时间
Java中获取当前时间的方式有多种,最常用的方式是使用Date类。Date类的构造函数可以不输入参数,默认会获取当前时间。获取当前日期和时间的代码如下:
Date date = new Date(); System.out.println(date);
2. 格式化日期和时间
在Java中,可以使用SimpleDateFormat类来对日期进行格式化。SimpleDateFormat类的构造函数可以输入需要格式化的日期样式,格式样式由符号组成。常用的符号有:yyyy(年份)、MM(月份)、dd(日)、HH(小时)、mm(分钟)、ss(秒)。格式化日期的代码如下:
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String str = sdf.format(date);
System.out.println(str);
3. 字符串转为日期和时间类型
在开发中,有时需要将字符串类型的日期和时间转换为日期类型,Java提供了使用SimpleDateFormat类的parse()方法,将字符串转为日期类型。代码如下:
String str = "2021年7月1日";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
Date date = sdf.parse(str);
System.out.println(date);
4. 比较两个日期的大小
Java中可以使用Date类的compareTo()方法来比较两个日期的大小。代码如下:
Date date1 = new Date();
Date date2 = new Date();
int result = date1.compareTo(date2);
if(result > 0) {
System.out.println("date1在date2之后");
} else if(result == 0) {
System.out.println("date1和date2相等");
} else {
System.out.println("date1在date2之前");
}
5. 时间戳转日期时间
在Java中,时间戳是指从1970年1月1日00:00:00到现在的毫秒数。Java可以使用System类的currentTimeMillis()方法获取当前的时间戳。将时间戳转为时间的格式,可以使用SimpleDateFormat类。代码如下:
long time = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = sdf.format(new Date(time));
System.out.println(str);
6. 计算日期的差值
Java中可以使用Calendar类来计算日期之间的差值。获取Calendar实例对象之后,可以使用add()方法增加或减少日期,使用get()方法获取日期的具体信息。代码如下:
Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); c1.setTime(new Date()); c2.setTime(new Date(2021, 8, 22)); int diffYears = c1.get(Calendar.YEAR) - c2.get(Calendar.YEAR); int diffMonths = c1.get(Calendar.MONTH) - c2.get(Calendar.MONTH); int diffDays = c1.get(Calendar.DAY_OF_MONTH) - c2.get(Calendar.DAY_OF_MONTH); System.out.println(diffYears); System.out.println(diffMonths); System.out.println(diffDays);
7. 在日期和时间之间转换
Java中可以使用Calendar类进行日期和时间之间的转换。可以使用set()方法设置日期和时间,使用get()方法获取日期和时间。代码如下:
Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2021); cal.set(Calendar.MONTH, 6); cal.set(Calendar.DAY_OF_MONTH, 1); Date date = cal.getTime(); System.out.println(date); cal.setTime(new Date()); int year = cal.get(Calendar.YEAR); int month = cal.get(Calendar.MONTH); int day = cal.get(Calendar.DAY_OF_MONTH); System.out.println(year + "-" + month + "-" + day);
总结:
Java中有很多时间函数,上面只列举了一些比较常用的。在实际开发中,开发者还可以根据自己的需求进行灵活应用。当然,使用这些时间函数时,需要注重代码简洁、可读性强、扩展性好等方面,这样才能写出高质量的代码。
