常用类.时间

Date

Date表示特点的瞬间,精确到毫秒。Date中的大部分方法都已经被Calendar类中的方法所取代

时间单位:

1秒=1000毫秒

1毫秒=1000微秒

1微秒=1000纳秒

复制代码
package cyl4;

import java.util.Date;

public class Demo06 {
    public static void main(String[] args) {
        //1.创建Date对象
        //今天
        Date date1 = new Date();
        System.out.println(date1.toString());
        //昨天
        Date date2 = new Date(date1.getTime()-(60*60*24*1000));
        System.out.println(date2.toString());
        //2.使用after before
        boolean b1 = date1.after(date2);
        System.out.println(b1);
        boolean b2 = date2.before(date1);
        System.out.println(b2);
        //比较compareTo();比毫秒值
        int d = date1.compareTo(date2);
        System.out.println(d);
        //比较是否相等equals();
        boolean b3 = date1.equals(date2);
        System.out.println(b3);

    }
}
复制代码

Calendar

Calendar提供了获取或设置各种日历字段的方法

构造方法:protected Calendar():由于修饰符是protected,所以无法直接创建该对象

其他方法:

方法名说明
static Calendar getInstance() 使用默认时区和区域获取日历
void set(int year,int month,int date,int hourofday,int minute,int second) 设置日历的年、月、日、时、分、秒
int ge(int field) 返回给定日历字段的值。字段如年、月、日等
void setTime(Date date) 用给定的Date设置此日历的时间。Date-Calendar
Date getTime() 返回一个Date表示此日历的时间。Calendar-Date
void add(int field,int amount) 按照日历的规则,给指定字段添加或减少时间段
long getTimeInMillies() 毫秒位单位返回该日历的时间值
复制代码
package cyl4;

import java.util.Calendar;

public class Demo07 {
    public static void main(String[] args) {
        //1.创建Calendar对象
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar.getTime().toString());
        System.out.println(calendar.getTimeInMillis());
        //2.获取时间信息
        //获取年
        int year = calendar.get(Calendar.YEAR);
        //月 从0-11
        int month = calendar.get(Calendar.MONTH);
        //
        int day = calendar.get(Calendar.DAY_OF_MONTH);//DATE
        //小时
        int hour = calendar.get(Calendar.HOUR_OF_DAY);//HOUR 12小时进制 HOUR_OF_DAY 24小时进制
        //分钟
        int minute = calendar.get(Calendar.MINUTE);
        //
        int second = calendar.get(Calendar.SECOND);
        System.out.println(year+"年"+(month+1)+"月"+day+"日"+hour+":"+minute+":"+second);
        //3.修改时间
        Calendar calendar2 = Calendar.getInstance();
        calendar2.set(Calendar.DAY_OF_MONTH,22);
        System.out.println(calendar2.getTime().toString());
        //4.add方法修改时间
        calendar2.add(Calendar.HOUR,1);
        System.out.println(calendar2.getTime().toString());

        //5.补充方法
        int max = calendar2.getActualMaximum(Calendar.DAY_OF_MONTH);
        int min = calendar2.getActualMinimum(Calendar.DAY_OF_MONTH);
        System.out.println(max);
        System.out.println(min);
    }
}
复制代码

 

SimpleDateFormat

SimpleDateFormat是一个以语言环境有关的方式来格式化和解析日期的具体类

进行格式化(日期->文本)、解析(文本->日期)

常用的时间模式字母

字母日期或时间示例
y 2022
M 年中月份 08
d 月中天数 23
H 一天中小时数(0-23) 21
m 分钟 23
s 59
S 毫秒 367
复制代码
package cyl4;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Demo08 {
    public static void main(String[] args) throws ParseException {
        //1.创建SimpleDateFormat对象 y 年 M 月
        //SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
        //2.创建Date
        Date date = new Date();
        //格式化date(把日期转成字符串)
        String str = sdf.format(date);
        System.out.println(str);
        //解析(把字符串转成日期)
        Date date2 = sdf.parse("2000年03月16日");//格式要与创建的对象格式相同
        System.out.println(date2);
    }
}
复制代码

 

posted @   sususyq-  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示