java时间转换日期格式,转换时间戳,基础类型new Date()、SimpleDateFormat、DateFormatUtils、compareTo()

本文详细介绍了Java中Date类的使用、SimpleDateFormat的日期格式化功能,以及DateFormatUtils工具类在日期处理中的应用,包括日期的比较方法,如getTime()和compareTo()的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Date类说明

java.util包提供了Date类来封装当前的日期和时间。 Date类提供两个构造函数来实例化Date对象。

// 出始化 Date 对象
Date date = new Date();
// 使用 toString() 函数显示日期时间
System.out.println(date.toString());

// 获取系统毫秒数
long time = System.currentTimeMillis();

// 打印系统毫秒数
System.out.println(System.currentTimeMillis());

2、SimpleDateFormat格式化日期,SimpleDateFormat类简介

SimpleDataFormat类可用于格式化、解析带区域的日期,可将日期格式转为文本,可将文本解析为日期,还可以进行日期规范化。
SimpleDataFormat类支持用户自定义日期格式,同时也提供一些内置的日期格式,例如可通过getTimeInstance、getDateInstance或DateFormat中的getDateTimeInstance获取内置日期格式。上述方法都会返回一个用默认格式的Date/Time类型对象。
 

public static String YYYY = "yyyy";

public static String YYYY_MM = "yyyy-MM";

public static String YYYY_MM_DD = "yyyy-MM-dd";

public static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";

public static final String parseDateToStr(final String format, final Date date) {
    return new SimpleDateFormat(format).format(date);
}

System.out.println(parseDateToStr(YYYY_MM_DD_HH_MM_SS, new Date()))

3、工具类DateFormatUtils,使用API

Date date = new Date();
// 格式化Date类型时间
String dateStr = DateFormatUtils.format(date, "yyyy-MM-dd");

long time = date.getTime();
// 格式化long类型时间
String dateStr1 = DateFormatUtils.format(time, "yyyy-MM-dd");

Calendar calendar = Calendar.getInstance();
// 格式化Calendar类型时间
String dateStr2 = DateFormatUtils.format(calendar, "yyyy-MM-dd");

// 特定格式时间如:2024/01/06
Date now = new Date();
String dateStr3 = DateFormatUtils.format(now, "yyyy/MM/dd");

// 特定格式时间如:20180808
Date now = new Date();
String dateStr3 = DateFormatUtils.format(now, "yyyyMMdd");

4、日期比较,几种方法来比较两个日期:

1、使用getTime()方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。
2、使用compareTo()方法,它是由Comparable接口定义的,Date类实现了这个接口。

    Date date1 = new Date();
	Thread.sleep(1000);
	Date date2 = new Date();
	int result = date1.compareTo(date2);
	if (result == 1) {
		System.out.println(result);// 1 大于
	}
	if (result == 0) {
		System.out.println(result);// 0 等于
	}
	if (result == -1) {
		System.out.println(result);// -1 小于
	}

	boolean flag1 = result > 0; // 大于
	boolean flag2 = result < 0; // 小于
	boolean flag3 = result == 0;// 等于
	boolean flag4 = result >= 0;// 大于等于
	boolean flag5 = result <= 0;// 小于等于
	System.out.println(flag1);
	System.out.println(flag2);
	System.out.println(flag3);
	System.out.println(flag4);
	System.out.println(flag5);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值