复习第一天:与日期相关的一些类和方法

时间类是我们常用的一种实用类,我常用到的有两种:
①Date相关的
②跟日历(Calendar)
首先来说说Date()相关的:

Ⅰ,获取当前时间的毫秒值:

System.currentTimeMillis()

运行结果:
在这里插入图片描述
System.currentTimeMillis()获取的一串数字,代表的是从规定日期到现在一共用了多少毫秒(可以应用在做某件事情的时候一共使用了多少秒)

        //计算电脑运行循环一共花费了多少秒
        long old = System.currentTimeMillis(); //定义好一个关于开始的时间,也就是毫秒值
        for (int i=0;i<99999;i++) {
            System.out.println(i);
        }
        System.out.println("一共用时    "+(System.currentTimeMillis()-old)+"    毫秒");

Ⅱ,关于Date()使用:

Date date = new Date();

运行结果:
在这里插入图片描述
说明了new Date()是一个英式的日期类型。然而在现实生活里面常常会让你输出一些很简单字符串的日期 比如:2019年7月1日, 2019-7-12 等等 这些都是一些自定义类型的时间。

Ⅲ,自定义时间的方式:SimpleDateFormat(“yyy年MM月dd日 HH小时mm分钟ss秒”)

        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日 HH小时mm分钟ss秒");

SimpleDateFormat有了两个主要的方法:
第一个:format() 里面的参数是Date类型,返回一个字符串类型,字符创的样式根据SimpleDateFormat(“yyyy年MM月dd日 HH小时mm分钟ss秒”)里的参数来决定的

 String format = dateFormat.format(new Date());
 System.out.println("当期日期为:"+ format);

运行结果:
在这里插入图片描述

第二个:parse()方法

        Date parse = dateFormat.parse("2019年12月21日 15小时35分钟31秒");
        System.out.println("把中文时间转成成日期类型是:"+parse);

运行结果: 是把字符串类型的日期转换成一个Date()类型
在这里插入图片描述
以上的Date常常会和SimpleDateFormat联系

 //把中文格式的日期转换成英文的 然后再转成毫秒值
        Date parse = dateFormat.parse("2019年12月21日 15小时35分钟31秒");
        System.out.println("把中文时间转成成日期类型是:"+parse);
        //把英文的日期转换成毫秒值的方法是:
        long time = parse.getTime();
        System.out.println("???"+time);
        System.out.println(time+"的时间日期类型是:"+parse);

然后再来研究下SimpleDateFormat这个类的一些参数
SimpleDateFormat 的格式化字符串符号
a AM或PM(上午或下午)
d 某个月份中的某天(1~31)
h AM/PM中的某个小时(1~12)
k 一天中的某个小时
m 分钟
s 秒
u 一星期中的某一天,星期一是1
w 一年中的某个星期(1~52)
y 年份
z 时区
D 一年中的某天(1~366)
E 一星期中的某天(如Thursday)
F 一月中的第几个星期几
G 纪元(例如AD或BC,分别表示(公元后或者公元前))
H 一天中的某个小时(0~23)
K AM/PM中的某个小时(0~11)
M 月份
s 毫秒
W 某月中的某个星期数(1~5)
X ISO 8061格式的时区
Y 一年中的某个星期

最后关于Date类和SimpleDateFormat类写一个总结的小案例

      /**
         * 写一个小案例 计算yyyy年的MM月dd日 是星期几
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您要判断的日期(yyyy年MM月dd日):");
        String s = scanner.nextLine();
        SimpleDateFormat year = new SimpleDateFormat("yyyy年MM月dd日");
        Date parse1 = year.parse(s);
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EE");
        String format1 = simpleDateFormat.format(parse1);
        System.out.println("今天是星期: "+format1);

Calendar 是java.util.Calendar 包下的一个关于日历的类
创建一个Calendar日期对象

Calendar instance = Calendar.getInstance();

①说下Calendar对象的一个转换: 把日历格式转成Date类型的一个方法

Calendar instance = Calendar.getInstance();
System.out.println("当前日历的值是:"+instance.getTime());

运行结果: (可以根据结果去随意转换)
在这里插入图片描述
根据Calendar来获取当前的日期

        //写出当前日历的值
        Calendar instance = Calendar.getInstance();
        System.out.println("当前日历的值是:"+instance.getTime());
        //获取当前的年份
        int year = instance.get(Calendar.YEAR);
        //获得当前的月份
        int month = instance.get(Calendar.MONTH);
        //获得当前的日期
        int day = instance.get(Calendar.DATE);
        System.out.println("当前的日期:"+year+"年"+month+"月"+day+"日");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值