日期工具类Date、SimpleDateFormat、用SimpleDateFormat中的方法让Date与String相互转换、Calendar类(日历类)的用法

Date

所在包:  java.util
			public class Date extends Object 
				implements Serializable,Cloneable,Comparable<Date>

常用方法:

方法实例 作用
Date d = New Date(); //返回当前时间 星期–月份–日—时:分:秒 CST 年份
Date d1=New Date(long a); //分配一个Date对象,并将其初始化为表示从标准基准时间起的指定毫秒数
d.getTime(); //获取当前时间和标准基准时间差的毫秒值
d.setTime(long data); //和Date的有参构造函数功能相同 分配一个Date对象,并将其初始化为表示从标准基准时间起的指定毫秒数

例子:

Long n = System.currentTimeBillis();
Date d0=New Date(n);
System.out.println(d0);//输出结果与Date date = New Date(); 一致
//输出结果: 
当前时间

SimpleDateFormat(日期时间类)

所在包:java.text
java.lang.Object
	java.text.Format
		java.text.DateFormat
			java.text.SimpleDateFormat
public class SimpleDateFormat extends DateFormat

构造方法:

方法名 作用
public SimpleDataFormat(); //构造一个SimpleDateFormat,使用默认模式和日期格式
public SimpleDateFormat(String pattern); //构造一个SimpleDateFormat使用给定的模式和默认的日期格式

常用方法例子:

Date -> String
public final String format(Date date); //将日期格式化成日期、时间字符串 相当于格式化为字符串
格式化操作:
Date d=new Date();   //获取当前时间的毫秒数
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");//定义时间输出的格式
String s=sdf.format(d);
System.out.println(s);
//输出结果
yyyy年MM月dd日 hh:mm:ss    //输出结果就是当前时间
---------------------------------------------------------------------------------
String -> Date
public Date parse(String source);  //相当于解析(parse)为Date格式
解析操作:
//注意:String要想解析为Date 格式必须和SimpleDateFormat(String pattern)中的格式保持一样
String ss="2021-10-12 17:47";
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
Date d1=sdf1.parse(ss);    //此处会有一个名为ParseException的异常 抛出即可
System.out.println(d1);
//输出结果
ss定义的时间

Calendar

所在包:java.util
java.lang.Object
	java.util.Calendar
 public abstract class Calendar 
		extends Object 
		implements Serializable,Cloneable,Comparable<Calendar>

构造方法:

修饰符 方法名
Protected Calendar()
Protected Calendar(TimeZone zone,Locale aLocale)

常用方法例:

Calendar c=Calendar.getInstance();  //获取对象实例
int year=c.get(Calendar.YEAR);//get方法返回int类型
int month=c.get(Calendar.MONTH)+1;  //系统默认从0开始 +1则为正常月份
int day=c.get(Calendar.DATE); //返回当月的当天
//int day=c.get(Calendar.DAY_OF_MONTH); //返回当月的当天

//get方法,将指定的时间量添加或减去给定的日历字段
c.add(Calendar.YEAR,10);
C.add(Calendar.DATE,-5);    //表示十年后的五天前 

//set方法,设置当前日历的年月日 public final void set(int year,int month,int date);
c.set(2088,11,30);
int year=c.get(Calendar.YEAR);
int month=c.get(Calendar.MONTH);
int day=c.get(Calendar.DAY_OF_MONTH);
System.out.println(year+" "+month+" "+day);
//输出结果
set中定义的时间
全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务