关闭

温故而知新(四)java基础:Number(包装类)、日期时间

标签: java
46人阅读 评论(0) 收藏 举报
分类:

Number类(包装类)

byte、int、double、float、short、long这些基本数据类型,Java都有提供对应的包装类Byte、Integer 、Double、Float、Short、Long。我们进行转换时,也叫装箱和拆箱。

//装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。
        int a=10;
        Integer b=a;//装箱,
        Integer.valueOf(a);//装箱

        int c=b;//拆箱
        b.intValue();
//对于–128到127(默认是127)之间的值,被装箱后,会被放在内存里进行重用,但是如果超出了这个值,系统会重新new 一个对象

Date

提供的方法:

这里写图片描述

java还提供的有相关方法来进行两个日期的比较:

  • 使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。

  • 使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2,
    12).before(new Date (99, 2, 18)) 返回true。

  • 使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。


SimpleDateFormat 日期格式化

Date date=new Date();
//可以自己定制一些想要的样式
SimpleDateFormat fm=new SimpleDateFormat("yyyy.MM.dd  hh:mm:ss");
String format = fm.format(date);
System.out.println("日期SimpleDateFormat: " + format.toString()); 
//日期SimpleDateFormat: 2017.09.01  09:38:02

日期和时间的格式化编码

这里写图片描述

当然Java提供的也有更方便的:printf日期格式化
这里写图片描述

使用起来也更简单:%t 必须这样开头

    Date date=new Date();   
    System.out.printf("日期SimpleDateFormat: %tF", date);
    //日期SimpleDateFormat: 2017-09-01
    //发挥你的想象里去找些新东西 

Calendar类

获取Calendar实例对象,代表当前系统时间

Calendar cl = Calendar.getInstance();//默认是当前日期

Calendar类对象字段类型

这里写图片描述

Test.java

Calendar cl = Calendar.getInstance();//默认是当前日期
        //创建一个指定日期的Calendar对象
//      cl.set(2017,9,7);

        int i = cl.get(Calendar.YEAR);//获取年份
        int i1 = cl.get(Calendar.MONTH);//获取月份
        int j = cl.get(Calendar.DATE);// 获得日期
        ////获取当前时间24小时制,第几个小时
        int hour = cl.get(Calendar.HOUR_OF_DAY);
        // 获得分钟
        int minute = cl.get(Calendar.MINUTE);
        // 获得秒
        int second = cl.get(Calendar.SECOND);
        // 获得星期几(注意(这个与Date类是不同的):1代表星期日、2代表星期1、3代表星期二,以此类推)
        int day = cl.get(Calendar.DAY_OF_WEEK);
        System.out.println("Calendar>> " +i+"年>>"+ i1+"月>>"+j+"日>>"+hour+":"+minute+"分>>"+"星期"+day);
        //Calendar>> 2017年>>8月>>1日>>10:28分>>星期6   //请注意获取星期几  所描述的信息

当然除了这些获取日期时间、和设置固定的对象时间,也可以进行日期的加减:

Calendar c1 = Calendar.getInstance();
/*把c1对象的日期加上10,也就是c1也就表示为10天后的日期,其它所有的数值会被重新计算 **/
c1.add(Calendar.DATE, 10);
/**把c1对象的日期减去10,也就是c1也就表示为10天前的日期,其它所有的数值会被重新计算*/
c1.add(Calendar.DATE, -10); 
//其他字段属性的add的意义以此类推
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:19202次
    • 积分:672
    • 等级:
    • 排名:千里之外
    • 原创:48篇
    • 转载:3篇
    • 译文:0篇
    • 评论:6条