常用API-3
Date类

/*
java.util, extends Object,
implements Serializable, Cloneable, Comparable<Date>
*/
public class DateDemo {
public static void main(String[] args) {
//public Date(); 分配一个Date对象,并初始化,表示它被分配的时间,精确到毫秒.
Date date = new Date();
System.out.println(date);
//Sun Feb 12 12:08:06 CST 2023
//public Date(long date); 分配一个Date对象,并初始化为从基准时间到指定时间的毫秒数.
long l = 1000*60*60*24*10;//秒,分,时,天,10天
Date d = new Date(l);
System.out.println(d);
//Sun Jan 11 08:00:00 CST 1970
}
}

public static void main(String[] args) {
Date d = new Date();
//public lang getTime();获得1970到现在的毫秒数
System.out.println( d.getTime()*1.0/1000/60/60/24/365);
System.out.println("----------------");
//public void setTime(long time);设置时间,
long time1 = 1000*60*60;
long time2 = System.currentTimeMillis();
//设置一个时间,并显示出来
d.setTime(time1);
System.out.println(d);
//Thu Jan 01 09:00:00 CST 1970
d.setTime(time2);
System.out.println(d);
//Sun Feb 12 13:16:10 CST 2023
}
SimpleDateFormat 类




public static void main(String[] args) throws ParseException {
Date d = new Date();
// Date ---> String 格式化
SimpleDateFormat sdf = new SimpleDateFormat();//创建对象
String s1 = sdf.format(d);//调用format方法,Date转为String
System.out.println(s1);
//2023/2/12 下午2:18
//自定义格式"yyyy年MM月dd日 HH:mm:ss", 可以自定义
SimpleDateFormat sdf2= new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String s2 = sdf2.format(d);//Date->String
System.out.println(s2);
//2023年02月12日 14:18:11
//String --->Date 解析
String s3 = "2000年01月01日 00:00:00";//必须与对象的格式相同
Date d3 = sdf2.parse(s3);//String->Date
System.out.println(d3);
//Sat Jan 01 00:00:00 CST 2000
}
案例 日期工具类
一般来说,工具类为了使用方便要: 构造方法私有, 成员方法静态.
案例:日期工具类
需求:定义一个日期工具类(DateUtils),包含两个方法:把日期转换为指定格式的字符串;
把字符串解析为指定格式的日期,然后定义一个测试类(DateDemo),测试日期工具类的方法
思路:
① 定义日期工具类(DateUtils)
② 定义一个方法dateToString,用于把日期转换为指定格式的字符串
·返回值类型:String
·参数:Date date, String format
③ 定义一个方法stringToDate,用于字符串解析为指定格式的日期
·返回值类型:Date
·参数:String s,String format
④ 定义测试类DateDemo,调用日期工具类中的方法
//工具类
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.SimpleTimeZone;
public class DateUtils {
/*案例:日期工具类
需求:定义一个日期工具类(DateUtils),包含两个方法:把日期转换为指定格式的字符串;
把字符串解析为指定格式的日期,然后定义一个测试类(DateDemo),测试日期工具类的方法
思路:
① 定义日期工具类(DateUtils)
② 定义一个方法dateToString,用于把日期转换为指定格式的字符串
·返回值类型:String
·参数:Date date, String format
③ 定义一个方法stringToDate,用于字符串解析为指定格式的日期
·返回值类型:Date
·参数:String s,String format
④ 定义测试类DateDemo,调用日期工具类中的方法
*/
//一般情况,工具类要构造方法私有,成员方法静态.
private DateUtils(){}
public static String dateToString(Date date,String format){
SimpleDateFormat sdf = new SimpleDateFormat(format);
String s1 = sdf.format(date);
return s1;
}
public static Date StringToDate(String s,String format) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat(format);
Date date = sdf.parse(s);
return date;
}
}
//测试类
import java.text.ParseException;
import java.util.Date;
public class DateUtilsDemo {
public static void main(String[] args) throws ParseException {
Date date = new Date();//创建日期对象
// System.out.println(date);
//定义方法
String s = DateUtils.dateToString(date, "yyyy-MM-dd HH:mm:ss");
//改变格式 //自定义方法的好处在于可以自定义输出格式
String syMd = DateUtils.dateToString(date, "yyyy-MM-dd");
System.out.println(s);
System.out.println(syMd);
//调用方法,转回Date类型
Date d1 = DateUtils.StringToDate(s, "yyyy-MM-dd HH:mm:ss");
System.out.println(d1);
}
}

浙公网安备 33010602011771号