Java 时间和日期类

一、Calender类

        1.构造方法

        Calendar类是一个抽象类,不能通过new+构造方法的方式创建对象,构造方法 protected  Calendar()  ;protected  Calendar(TimeZone zone, Locale aLocale) ,构造方法是protected修饰的,其他的非子类中不能通过new+构造方法的方式创建对象,但他提供了一个静态方法,返回的是,Calender类对象

        static Calendar getInstance()  得到对象的方式  Calendar  calendar=Calendar.getInstance();

        2.Calendar的常用操作

                i.查看日期,常用字段:

static int YEAR年份
static int MONTH月份
static int DAY_OF_MONTH本月的日期
static int DAY_OF_YEAR本年度的日数
static int DAY_OF_WEEK一周中的日期
static int WEEK_OF_YEAR本年度的周数
int get(int field)查询指定的日期时间

               ii.选定日期,未来的日期

void set(int year, int month, int date, int hourOfDay, int minute, int second)
void set(int year, int month, int date)

                  注意:set完成日期以后再一次使用日历对象得到的是设置后的相关日期信息

public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        int year = calendar.get(Calendar.YEAR);
        System.out.println(year);
        int month = calendar.get(Calendar.MONTH)+1;
        System.out.println(month);
        int dayofmonth = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println(dayofmonth);
        int dayofyear = calendar.get(Calendar.DAY_OF_YEAR);
        System.out.println(dayofyear);
        int dayofweek = calendar.get(Calendar.DAY_OF_WEEK)-1;
        System.out.println(dayofweek);
        int weekofyear = calendar.get(Calendar.WEEK_OF_YEAR);
        System.out.println(weekofyear);

        //设置一个自定义时间
        calendar.set(2022,8,3);
        //获取设置后时间日期
        int year1 = calendar.get(Calendar.YEAR);
        System.out.println(year1);
        System.out.println(calendar.get(Calendar.MONTH));
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));

    }

二、Date类

        1.构造方法

Date()
Date(long date)

        2.实例方法

boolean after(Date when)测试此日期是否在指定日期之后
boolean before(Date when)测试此日期是否在指定日期之前
boolean equals(Object obj)比较两个日期来平等
long getTime()返回自1970年1月1日以来,到当前时间的毫秒数
void setTime(long time)设置此Date对象以表示1970年1月1日00:00:00 GMT后设置的毫秒数的时间点String toString() 将此 Date对象转换为 String

三、SimpleDateFormat类

        1.构造方法
           SimpleDateFormat(String pattern) 得到一个有格式的SimpleDateFormat类对象

        2.设置时间日期格式的字母

yyyyYear
MMonth in year
dDay in month
HHour in day (0-23)
mMinute in hour
sSecond in minute
EDay name in week

        3.实例方法

String format(Date date)将日期格式化成日期/时间字符串
Date parse(String source)从给定字符串的开始解析文本以生成日期Date对象
public class TestMain {

	public static void main(String[] args)throws Exception {
		/*
		String pattern="yyyy-MM-dd HH:mm:ss E";
		SimpleDateFormat sdf=new SimpleDateFormat(pattern);
		Date  date1=new Date();
		//Fri Jul 01 15:55:24 GMT+08:00 2022
		String newdate=sdf.format(date1);
		System.out.println(newdate);
		//2022-07-01 16:39:49 星期五
		*/
		
		String pattern="yyyy-MM-dd HH时mm分ss秒";
		String strdate="2028-07-02 13时12分14秒";
		SimpleDateFormat sdf=new SimpleDateFormat(pattern);
		Date date=sdf.parse(strdate);
		System.out.println(date);
		//Sun Jul 02 13:12:14 GMT+08:00 2028
	}
}
//Calendar类中的getTime()方法可以将Calendar类设置的日期转换成Date类对象
Calendar calendar=Calendar.getInstance();
calendar.set(2022, 8-1, 2, 12, 13, 14);
Date  date=calendar.getTime();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH时mm分ss秒");
String strtime=sdf.format(date);
System.out.println(strtime);

四、总结

Calendar类设置的时间日期---转换成---Date类对象Calendar类中的getTime()方法
Date类对象表示的时间日期---转换成---StringSimpleDateFormat类的format(Date对象)
String对象表示的时间日期---转换成---Date类对象SimpleDateFormat类的parse(String)方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值