• 20145225《Java程序设计》 第7周学习总结


    20145225《Java程序设计》

    第7周学习总结

    教材学习内容总结

    第十三章 时间与日期

    13.1认识时间与日期

    1. 时间的度量:GMT、UT、TAI、UTC、Unix、epoch。

    2. 年历:Julian Calendar、Gergorian Calendar、ISO 8601标准。

    3. 时区。

    13.2认识Date与Calendar

    1. Date:使用Date实例的各getTime可以获得epoch毫秒数,**Data实例只用来当做时间轴上的某一瞬间。
    2. 格式化时间日期的DataFormat:方法:GetDateInstance、GetTimeInstance、GetDateTimeInstance、 直接构建SimpleDateFormat。
    3. 处理时间日期的Calendar:取得Calendar实例后,可以取得年月日信息,可以进行设定,可以进行运算来改变。
    4. TimeZone:TimeZone的getdefault可以取得默认时区的信息。
    import java.util.Date;
    import static java.lang.System.currentTimeMillis;
    import static java.lang.System.out;
    
    public class DateDemo {
    public static void main(String[] args) {
    Date date1 = new Date(currentTimeMillis());
    Date date2 = new Date();
    out.println(date1.getTime());
    out.println(date2.getTime());
    }
    }
    

    import java.util.Date;
    import static java.lang.System.out;
    import static java.text.DateFormat.*;
    public class DateFormatDemo {
    public static void main(String[] args) {
        Date date = new Date();
        dateInstanceDemo(date);
        timeInstanceDemo(date);
        dateTimeInstanceDemo(date);
    }
    static void dateInstanceDemo(Date date) {
        out.println("getDateInstance() demo");
        out.printf("	LONG: %s%n", getDateInstance(LONG).format(date));
    
        out.printf("	SHORT: %s%n", getDateInstance(SHORT).format(date));
    }
    
    static void timeInstanceDemo(Date date) {
        out.println("getTimeInstance() demo");
        out.printf("	LONG: %s%n", getTimeInstance(LONG).format(date));
        out.printf("	MEDIUM: %s%n", getTimeInstance(MEDIUM).format(date));
        out.printf("	SHORT: %s%n", getTimeInstance(SHORT).format(date));
    }
    
    static void dateTimeInstanceDemo(Date date) {
        out.println("getDateInstance() demo");
        out.printf("	LONG: %s%n", getDateTimeInstance(LONG, LONG).format(date));
        out.printf("	MEDIUM: %s%n", getDateTimeInstance(MEDIUM, MEDIUM).format(date));
        out.printf("	SHORT: %s%n", getDateTimeInstance(SHORT, SHORT).format(date));
    }
    }
    

     import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.Scanner;
    public class HowOld {
    public static void main(String[] args) throws Exception {
    System.out.print("输入出生年月日(yyyy-mm-dd):");
    DateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd");
    Date begin = new Date();
    Date birthday = dateFormat.parse(new Scanner(System.in).nextLine());
    Date currentDate = new Date();
    long life = currentDate.getTime() - birthday.getTime();
    System.out.println("你今年的岁数为:" + (life / (365 * 24 * 60 * 60 * 1000L)));
    Date end = new Date();
    long duration = end.getTime() - begin.getTime();
    System.out.println("运行时间:" + (duration));
    }
    }
    

    13.3新时间日期API

    1.机器时间观点:Date实例只代表机器观点的时间信息。

    2.人类时间观点:LockalDateTime、LocalDate、LocalTime。

    3.对时间的运算。

    4.年历系统设计。

    import static java.lang.System.out;
    import java.time.*;
    public class ZonedDateTimeDemo {
    public static void main(String[] args) {
        LocalTime localTime = LocalTime.of(0, 0, 0);
        LocalDate localDate = LocalDate.of(1975, 4, 1);
        ZonedDateTime zonedDateTime = ZonedDateTime.of(
                localDate, localTime, ZoneId.of("Asia/Taipei"));
    
        out.println(zonedDateTime);
        out.println(zonedDateTime.toEpochSecond());
        out.println(zonedDateTime.toInstant().toEpochMilli());
    }
    }
    

    代码调试中的问题和解决过程

    本周代码见代码托管https://git.oschina.net/nizaikanwoba/java-besti-is-2015-2016-2-20145225

    其他(感悟、思考等,)

    好好学。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积)
    目标 5000行 30篇 400小时
    第一周 150/150 2/2 15/15
    第二周 150/300 1/3 15/30
    第三周 200/500 1/4 15/45
    第四周 200/700 1/5 15/60
    第五周 200/900 1/6 15/75
    第六周 200/1100 1/7 15/80
    第七周 200/1300 2/9 15/75

    参考资料

  • 相关阅读:
    Digital Square(hdu4394)搜索
    Substrings(hdu1238)字符串匹配
    Graveyard(poj3154)
    数据库的范式理论
    模和除
    You can Solve a Geometry Problem too (hdu1086)几何,判断两线段相交
    对vector等STL标准容器进行排序操作(转!)
    0 or 1(hdu2608)数学题
    LintCode 4.丑数
    LintCode 9.Fizz Buzz问题
  • 原文地址:https://www.cnblogs.com/nizaikanwoma/p/5402148.html
Copyright © 2020-2023  润新知