zoukankan      html  css  js  c++  java
  • Java连载78-深入自动拆装箱、Date类和SimpleDateFormat格式化

    一、深入自动拆装箱

    1.直接举例:

    public class D78_AutomaticUnpackingAndPacking{
      public static void main(String[] args){
        Integer i1 = new Integer(10);
        Integer i2 = new Integer(10);
        //这里不会自动进行拆箱
        System.out.println(i1==i2);//false
        //比较两个Integer类型的数据是否相等,不能用“=="
        //Integer已经重写了Object中的equals方法
        System.out.println(i1.equals(i2));//true
        //重点:
        Integer i3 = 128;
        Integer i4 = 128;
        //上面的等同于:
        //Integer i3 = new Integer(128);
        //Integer i4 = new Integer(128);
        System.out.println(i3==i4);//false
        
        Integer i5 = 127;//这条语句直接在方法区的整形常量池中拿来,不会再堆内存中创建这个对象
        Integer i6 = 127;
        System.out.println(i5==i6);//true
    ​
        Integer i5 = -128;
        Integer i6 = -128;
        System.out.println(i5==i6);//true
    ​
        Integer i5 = -129;
        Integer i6 = -129;
        System.out.println(i5==i6);//false
    //如果数据是在-128到127之间,java中引入了”整形常量池“(可以类比字符串常量池)
        
        String s1 = "ab";
        String s2 = "ab";
        System.out.println(s1==s2);//true,原因就是字符串常量池   
      }
    }
    

    二、日期相关的操作

    1.获取当前时间

    java.util.Date

    import java.util.Date;
    import java.text.SimpleDateFormat;
    ​
    public class D78_2_{
      public static void main(String[] args) throws Exception{
        //之所以要抛出异常,是因为String转换为Date的时候容易报错
        //获取自1970年1月1日 00时00分00秒000毫秒到当前的毫秒数
        //1000毫秒等于一秒
        long now = System.currentTimeMillis();
        System.out.println(now);//1245839589
        //获取系统当前时间
        Date nowTime = new Date();
        System.out.println(nowTime);//Tue Jan 30 23:21:23 CST 2020
        //以上程序说明java.util.Date;已经重写了Object中的toString方法
        //只不过重写的结果对于中国人来讲不是很容易理解
        //java.util.Date;-->String
        /*
        *日期格式:
        *y  年  M  月  d  日  H  小时  m  分  s  秒  S  毫秒
        */
        //创建日期格式化对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日  HH:mm:ss SSS");
        //开始格式化(Date-->String)
        String strTime = sdf.format(nowTime)//2020年01月30日  23:29:12 567
        /*
        *获取特定的日期
        */
        String strTime2 = "2008年08月8日 08:08:08 888";
        //将String日期转换为类型Date
        //String-->Date
        //1.创建日期格式化对象
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss SSS");
        //不能随意指定格式,应该和要解析的字符串的类型格式相对应
        Date t1 = sdf.parse(strTime);
        System.out.println(t1);
      }
    }

    三、源码:                                       

    D78_1_AutomaticUnpackingAndPacking.java

    D78_2_TimeMethodAnalysis.java

    https://github.com/ruigege66/Java/blob/master/D78_1_AutomaticUnpackingAndPacking.java

    https://github.com/ruigege66/Java/blob/master/D78_2_TimeMethodAnalysis.java

    2.CSDN:https://blog.csdn.net/weixin_44630050

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

  • 相关阅读:
    Junit单元测试
    win7的6个网络命令
    WOJ1024 (POJ1985+POJ2631) Exploration 树/BFS
    WOJ1022 Competition of Programming 贪心 WOJ1023 Division dp
    woj1019 Curriculum Schedule 输入输出 woj1020 Adjacent Difference 排序
    woj1018(HDU4384)KING KONG 循环群
    woj1016 cherry blossom woj1017 Billiard ball 几何
    woj1013 Barcelet 字符串 woj1014 Doraemon's Flashlight 几何
    woj1012 Thingk and Count DP好题
    woj1010 alternate sum 数学 woj1011 Finding Teamates 数学
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/12244444.html
Copyright © 2011-2022 走看看