黑马学习笔记
这些方法在API文档都能查到

Date类

常用方法

在这里插入图片描述

代码演示

package Time;

import java.util.Date;

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-08-26
 */
public class Test {
    public static void main(String[] args) {
        Date date = new Date();
        System.out.println(date);
        //从1990年1.1到现在的毫秒值
        long time = date.getTime();
        System.out.println(time);

        time += 2*1000;
        //把时间毫秒值转换为Date对象
        Date date1 = new Date(time);
        System.out.println(date1);
        //set方法修改
        date.setTime(time);
        System.out.println(date);
    }
}

在这里插入图片描述

SimpleDateFormat

常用方法

在这里插入图片描述
在这里插入图片描述

代码演示

package Time;

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

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-08-26
 */
public class SimpleDateFormatTest {
    public static void main(String[] args) {
        //准备一个时间对象 和 毫秒值 供使用
        Date date = new Date();
        System.out.println(date);
        long time = date.getTime();

        //利用 SimpleDateFormat 格式化时间,传date对象 或者是 毫秒值 都可以
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EEE a");//格式化 EEE 是周几 a 是上午还是下午
        String s = simpleDateFormat.format(date);
        System.out.println(s);

        String s1 = simpleDateFormat.format(time);
        System.out.println(s1);
    }
}

在这里插入图片描述

时间格式常见符号

在这里插入图片描述

SimpleDateFormat解析字符串为Date对象

在这里插入图片描述

代码

package Time;

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

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-08-26
 */
public class SimpleDateFormatTest {
    public static void main(String[] args) throws ParseException {
        //字符串转Date对象
        String dateStr = "2025-08-26 09:00:00 ";
        SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//注意格式要与字符串格式一致
        Date date1 = simpleDateFormat1.parse(dateStr);
        System.out.println(date1);

    }
}

在这里插入图片描述

总结

  1. SimpleDateFormat代表什么,有什么作用?
  2. SimpleDateFormat的对象如何创建?
  3. SimpleDateFormat格式化,以及解析时间的方法有哪些?

案例:秒杀活动:

在这里插入图片描述

package Time;

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

/**
 * @Author: ggdpzhk
 * @CreateTime: 2024-08-26
    秒杀活动
 */
public class Test3 {

    public static void main(String[] args) throws ParseException {
    /*这段Java代码首先将时间表示为String类型,
    是因为时间数据最初以文本形式给出,格式为 "年-月-日 时:分:秒"。
    使用String便于存储和展示这种格式化的时间。*/

        String startTime = "2024-08-26 00:00:00";
        String endTime = "2024-08-26 00:10:00";
        String xj = "2024-08-26 00:01:08";
        String xp = "2024-08-26 00:10:08";

        //把字符串接受为日期对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date startDate = sdf.parse(startTime);
        Date endDate = sdf.parse(endTime);
        Date xjDate = sdf.parse(xj);
        Date xpDate = sdf.parse(xp);

        //把 date对象转换为时间毫米值进行 比较计算
        long startTimeMillis = startDate.getTime();
        long endTimeMillis = endDate.getTime();
        long xjTimeMillis = xjDate.getTime();
        long xpTimeMillis = xpDate.getTime();

        if (xjTimeMillis >= startTimeMillis && xjTimeMillis <= endTimeMillis){
            System.out.println("恭喜!小贾抢到啦!!");
        } else{
            System.out.println("很遗憾,小贾没有抢到!!");
        }
        if (xpTimeMillis >= startTimeMillis && xpTimeMillis <= endTimeMillis) {
            System.out.println("恭喜!小皮抢到啦!!");
        }else{
            System.out.println("很遗憾,小皮没有抢到!!");
        }


    }
}

在这里插入图片描述

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部