《JAVA程序设计》第八周学习总结

《JAVA程序设计》第八周学习总结

一、目录

  • 第十五章知识总结
  • 遇到的问题及解决方法
  • 上周错题总结
  • 代码托管
  • 感想

二、第十五章知识总结:泛型与集合框架

  • 泛型:
    • 泛型类声明:可以使用“class 名称<泛型列表>”声明一个类,例如:class People<E>
    • 类名后多了对“<>”,而且必须要用具体的类型替换“<>”中的泛型。
    • 声明对象:

Cone coneOne;
coneOne = new Cone(new Circle());


- 链表:
  - LinkedList链表:创建对象以链表结构存储数据
  - 创建空链表:`LinkedList mylist = new LinkedList();`
  - 使用`add(E obj)`方法依次增加节点
  - 使用`get(int index)`方法遍历链表
  - 排序与查找 :
  1 、升序排序:`public static sort(List list)`
  2、折半法查找:`int binarySearch(List list,T key,CompareTo c)`

 - 洗牌与旋转 :
 1、随机排序:`public static void shuffle(List list)`
 2、旋转数据:`static void rotate(List list,int distance)`
 3、翻转数据:`public static void reverse(List list)`
- 堆栈 :
  - 创建堆栈对象:`Stack`
  - 压栈操作:`public E push(E item);`
  - 弹栈操作:`public E pop();`
  - 判断堆栈是否还有数据:`public boolean empty()`;有数据返回`false`,否则返回`true`。
  - 获取堆栈顶端的数据,但不删除该数据:`public E peek()`
  - 获取数据在对战中的位置:`public int search(Object data);`
- 散列映射:
   - 使用`HashMap<K,V>`泛型类创建的对象称作散列映射。
- 树集:
  - `TreeSet`类创建的对象叫做树集。
  - 在树集中,按字典顺序从左到右递增,从上到下递减。
- 树映射:
   - `TreeMap<K,V>`对象为树映射。
  - 树映射的节点可以存储关键字、关键值对。 
   - 排序时,按照关键字升序排序。

**三、遇到的问题及解决方法:**

- 问题:编译Example15_3时,会出现报错:
![](https://img2018.cnblogs.com/blog/1265430/201904/1265430-20190421170800990-1075946250.png)
- 解决方法:刚开始以为是程序代码打错了,翻书查找原因时,才发现是因为使用了旧版本的LinkedList类,JDK1.5后续版本的编译器会给出警告信息,但程序仍能正常运行。

**四、上周错题总结:**
![](https://img2018.cnblogs.com/blog/1265430/201904/1265430-20190421170815035-1681401796.png)
- 解析:③:要查找本身,需要用\。⑥:注意字符转义,应为""Hello"".matches("(["'])[^"']*\1")。

![](https://img2018.cnblogs.com/blog/1265430/201904/1265430-20190421170823970-701964317.png)
- 解析:查询API。B项:直到索引 endIndex - 1 处的字符。E项:抛出IndexOutOfBoundsException异常。

**五、码云链接:**
https://gitee.com/sgm5/text1/commit/398e41f04f25b6aa6947734e7445a252cc123e64


**六、感想:**
这周学到了很多有用的内容,感觉是很值得的。有些知识点可能略过没能仔细琢磨,敲代码时发现自己其实并未完全掌握,但还是能学到一些知识,通过课上的测试反馈出来的问题漏洞有很多,看完教材感觉自己会了,但在做题过程中一些概念定义还是模棱两可,不太牢固,还是应多将理论运用到实际。

**七、PSP**

|   周数 | 代码行数(新增/累积) |博客量(新增/累积) | 学习时间(新增/累积)|重要成长|
|---------| ------ | ------ | ------|----------|
|目标| 5000行| 30篇 |400小时|   |  
|第八周|1187/4057|2/12| 18/110 | |
原文地址:https://www.cnblogs.com/sgm5/p/10745849.html