20145122《Java程序设计》第七周学习总结

教材学习内容总结

1.在只有Lambda表达式的情况下,参数的类型必须写出来。

2.Lambda表达式本身是中性的,同样的Lambda表达式可用来表示不同目标类型的对象操作。

3.Lambda表达式只关心方法命名上的参数与返回定义,但忽略方法名称。

4.如果变量不会在匿名类中有重新指定的动作,就可以不用加上final关键词。

5.只要静态方法的方法命名中参数与返回值定义相同,也可以使用静态方法来定义函数接口操作。

6.JDK8定义的通用函数接口,基本上放置于java.util.function套件之中,就行为来说,基本上可以分为consumer,function,predicate,supplier四个类型。

7.Epoch为某个特定时代的开始,时间轴上某一瞬间。

8.取得系统时间的方法之一是使用System,currentTimeMillis()方法,返回的是long类型整数。

9.Date实例基本上建议只用来当做时间轴上的某一瞬间。

10.ofDays(),ofMonths(),ofWeeks()其实是Period的静态方法,他们会返回period实例。

11.新时间日期处理API的主要套件命名为java.time。

12.plus方法接受java.time.temporal.TemporalAmount实例,而TemporalAmount的操作类也就是Period与Duration。实际上plus()方法也可以接受Duration实例来计算。

13.使用Instant的静态方法now()可以取得代表java epoch毫秒数的Instant实例。

教材学习中的问题和解决过程

Java日期时间运算经常会在程序中被用到。无所不能的Java提供了强大的工具类:java.util.Date和java.util.Calendar.


package javadateoperation; import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; public class JavaDateOperation { public static void main(String[] args) { //定义时间格式
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date date = new Date();
//输出当前时间
System.out.println("now:"+format.format(date));
//获得Calendar实例
Calendar calendar = Calendar.getInstance();
//把要进行运算的时间放到calendar实例中
calendar.setTime(date);
//进行运算
//去年
calendar.add(Calendar.YEAR,-1);
System.out.println("last year:"+format.format(calendar.getTime())); } }

20145122《Java程序设计》第七周学习总结

还有经常能用的到的:

System.out.println("the week of this month is" + calendar.get(Calendar.WEEK_OF_MONTH));//本月第几周
System.out.println("the week of this yeah is" + calendar.get(Calendar.WEEK_OF_YEAR));//本年第几周

本周代码托管截图

20145122《Java程序设计》第七周学习总结

20145122《Java程序设计》第七周学习总结

其他(感悟、思考)

本周的学习过程很累,JAVA的学习内容越来越多,而且难度越来越大,但还是只能向前走。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
第一周 100/100 2/2 10/10
第二周 150/250 1/3 10/20
第三周 100/350 1/4 10/30
第四周 320/670 1/5 30/60
第五周 700/1370 1/6 30/90
第六周 700/2070 2/8 30/120
第七周 700/2770 2/10 30/150
上一篇:java 优化版 用接口实现(输入两个数选择实现加减乘除运算)


下一篇:安卓自定义View进阶-Canvas之画布操作 转载