JAVA 日期时间类(Date)

一、基本语法

创建日期对象(取得当前时间)

Date d = new Date();

 

创建日期格式对象

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

 

原始日期格式化

String str = sdf.format(d);

格式日期原始化

Date dt = sdf.parse(str);

 

示例:取得当前时间并将其转化为格式时间输出

package test1;
import java.util.Date;  //日期类
import java.text.SimpleDateFormat; //日期转换类
import java.text.ParseException;
public class DateTest {
	public static void main(String[] args)
	{
		 //创建日期对象
		Date d = new Date();
		//创建日期格式对象
		SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd  hh:mm:ss");
		
		//日期转换为字符串
		String str = s.format(d);
		//输出结果
		System.out.println(str);
		
	}
}

示例:将格式时间转化为原始时间

package test1;
import java.util.Date;  //日期类
import java.text.SimpleDateFormat; //日期转换类
import java.text.ParseException;
public class DateTest {
	public static void main(String[] args)
	{
		//字符串转换为日期
		String t = "2024-05-25  01:32:57";
		SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd  hh:mm:ss");
		Date dt = null;
		try {
			dt = sd.parse(t);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(dt);
	}
}

 

二、进阶用法

getTime用于存储现在距离1970年的毫秒数

long t=d.getTime();

 

setTime 是getTime的反向

 

示例:求一百天后是几月几号

package test1;
import java.util.Date;
public class DateTest2 {
	public static void main(String[] args)
	{
		//getTime用于存储现在距离1970年的毫秒数
		//t存储的是距离1970年的毫秒数
		Date d = new Date();
		long t=d.getTime();
		//System.out.println(t);
		
		//setTime是getTime的反向转化
		//求一百天以后的日期
		Date date= new Date();
		date.setTime(date.getTime()+100L*60*60*24*1000);
		System.out.println(date);
	}
}

 

示例:求解今天距离1949.10.1几天

package test1;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest3 {
	public static void main(String[] args) throws ParseException {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Date fsv = new Date();
		String s = "1949-10-1";
		fsv = sdf.parse(s);
		Date now = new Date();
		long tmp = now.getTime() - fsv.getTime();
		int ans = (int) (tmp/(60*60*24*1000));
		System.out.println(ans);
	}
}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值