又到了博客总结时间,每次这个时候都会感觉无力从心,因为当回过头看这一周自己到底学了什么,是否能够独立地说出来并解释如何运用以及具体的一些细节时,我都是模模糊糊、模棱两可的感觉,也许是我不够熟练或者还没有真正理解而达到融会贯通吧。下面是本周的一些学习内容和自己的心得与感悟。
前半周主要复习了以往学习的内容,包括继承、抽象类、接口以及一些基本的API,通过复习加深了对这部分内容的理解,也更好地补充了我知识上的漏洞。后半周就继续学习了新的内容泛型与集合,感觉跟以往一样,学了又跟没学一样,知识不进脑子的感觉。泛型是为了统一集合当中的数据类型,我的理解是举个例子,一个List类来储存数据,如果不使用泛型,就要使用string int数据类型,通过泛型可以写一个通用的类List,需要时指定具体的数据类型就行了。后面还有泛型方法,通配符(?)和边界等等。
接着就是Collection和Map集合接口均继承Iterator接口,首先是Collection接口以及其实现类List、Set。
List包含ArrayList数组类以及LinkedList类;Set包含HashSet、TreeSet类。
创建集合: Collection<元素类型> 变量名 = new ArrayList<元素类型>();
Collection 变量名 = new ArrayList();
List系列集合: 添加的元素师有序、可重复、有索引。
Set系列集合:添加的元素是无序、不重复、无索引。
List系列集合的五种遍历方式:①迭代器②列表迭代器③增强for④lambda表达式⑤普通for循环。
获取迭代器对象格式:Iterator<元素类型> + 对象名 = 集合名.iterator();
创建Set集合对象: Set<元素类型> 对象名 = new HashSet<元素类型>();
其中List、Set集合也各自包含其实现类有很多常用方法,书上都有,当然也可以查看jdk文档。
Map接口,其元素成对出现,也是键值对集合,其包含HashMap及TreeMap类。
其中Map集合put方法作用:添加和覆盖。
①在添加数据的时候,如果键不存在,那么直接把键值对对象添加到map集合中,方法返回null.
②添加数据过程中,如果键存在,那么会把原有的键值对对象覆盖,并且被覆盖的值进行返回.
HashMap:无序、不重复、无索引。
TreeMap:按大小默认排序,不重复,无索引。
本周状态感觉不如上周,可能是天气变冷的原因吧。希望自己继续加油。