学号 20175212童皓桢 《Java程序设计》第8周学习总结
學號 20175212童皓楨 《Java程序設計》第8周學習總結
教材學習內容總結
泛型
class People<E>
其中People是泛型類的名稱,E是其中的泛型,也就是說我們并沒有指定E是何種類型的數據,它可以是任何對象或接口,但不能是基本類型數據。
泛型類聲明和創建對象時,類名后多了一對“<>”,而且必須要用具體的類型替換“<>”中的泛型。例如:
Cone<Circle> coneOne;
coneOne =new Cone<Circle>(new Circle());
鏈表
1.LinkedList<E>泛型類創建的對象以鏈表結構存儲數據,習慣上稱LinkedList類創建的對象為鏈表對象。例如,
LinkedList<String> mylist=new LinkedList<String>();2.創建一個空雙鏈表。
add(E obj) 向鏈表依次增加節點
3.遍歷鏈表
當用戶需要遍歷集合中的對象時,應當使用該集合提供的迭代器,而不是讓集合本身來遍歷其中的對象。由于迭代器遍歷集合的方法在找到集合中的一個對象的同時,也得到待遍歷的后繼對象的引用,因此迭代器可以快速地遍歷集合。
鏈表對象可以使用iterator()方法獲取一個Iterator對象,該對象就是針對當前鏈表的迭代器。
4.排序與查找
public static sort(List<E> list) 該方法可以將list中的元素升序排列。
int binarySearch(List<T> list, T key,CompareTo<T> c) 使用折半法查找list是否含有和參數key相等的元素,如果key鏈表中某個元素相等,方法返回和key相等的元素在鏈表中的索引位置
5.洗牌與旋轉
Collections類還提供了將鏈表中的數據重新隨機排列的類方法以及旋轉鏈表中數據的類方法。
public static void shuffle(List<E> list) 將list中的數據按洗牌算法重新隨機排列。
static void rotate(List<E> list, int distance) 旋轉鏈表中的數據。
public static void reverse(List<E> list) 翻轉list中的數據。
堆棧
堆棧是一種“后進先出”的數據結構,只能在一端進行輸入或輸出數據的操作。
Stack<E>泛型類創建一個堆棧對象,堆棧對象常用方法:
public E push(E item);實現壓棧操作
public E pop();實現彈棧操作。
public boolean empty();判斷堆棧是否還有數據。
public E peek();獲取堆棧頂端的數據,但不刪除該數據。
public int search(Object data);獲取數據在堆棧中的位置。
散列映射
HashMap<K,V>對象采用散列表這種數據結構存儲數據,習慣上稱HashMap<K,V>對象為散列映射。
例如:
HashMap<String,Student> hashtable= HashSet<String,Student>();
hashtable可以存儲“鍵/值”對數據。
樹集
TreeSet<E>類創建的對象稱作樹集。
例如TreeSet<String> mytree=new TreeSe<String>;
然后使用add方法為樹集添加節點,例如mytree.add("boy");
樹集用add方法添加節點,節點會按其存放的數據的“大小”順序一層一層地依次排列,在同一層中的節點從左到右按“大小”順序遞增排列,下一層的都比上一層的小
教材學習中的問題和解決過程
教材中代碼調試有問題先去https://shimo.im/doc/1i1gldfsojIFH8Ip/看看,如果別人沒有提出相同問題,可以編輯文檔添加,然后把自己提出的問題復制到下面:
- 問題1:教材P458例9中,
put方法不了解,不清楚此段的作用。
- 問題1解決方案:查找API
意為將關鍵字與值聯系起來
代碼托管
上周考試錯題總結
無
結對及互評
評分標準
- 不使用Markdown不加分
- 有語法錯誤的不加分(鏈接打不開,表格不對,列表不正確...)
- 排版混亂的不加分
- 缺少“教材學習中的問題和解決過程”的不加分
- 缺少“代碼調試中的問題和解決過程”的不加分
- 代碼托管不能打開的不加分
- 缺少“結對及互評”的不能打開的不加分
- 缺少“上周考試錯題總結”的不能加分
- 缺少“進度條”的不能加分
- 缺少“參考資料”的不能加分
教材學習中的問題和解決過程, 一個問題加1分
代碼調試中的問題和解決過程, 一個問題加1分
- 一周提交次數少于20次的不加分
- 周五前發博客的加1分
- 感想,體會不假大空的加1分
- 排版精美的加一分
- 進度條中記錄學習時間與改進情況的加1分
- 有動手寫新代碼的加1分
- 課后選擇題有驗證的加1分
- 代碼Commit Message規范的加1分
- 錯題學習深入的加1分
- 點評認真,能指出博客和代碼中的問題的加1分
- 結對學習情況真實可信的加1分
- 有抄襲的扣至0分
- 代碼作弊的扣至0分
- 遲交作業的扣至0分
點評模板:
- 博客中值得學習的或問題:
- xxx
- xxx
- ...
- 代碼中值得學習的或問題:
- xxx
- xxx
- ...
基于評分標準,我給本博客打分:XX分。得分情況如下:xxx
參考示例
點評過的同學博客和代碼
- 本周結對學習情況
- 結對同學學號1
- 結對照片
- 結對學習內容
- XXXX
- XXXX
- ...
上周博客互評情況(只要鏈接,具體點評放相應博客下)
- 學號1
- 學號2
- 學號3
- 學號4
- ...
其他(感悟、思考等,可選)
xxx
xxx
學習進度條
| 目標 | 5000行 | 30篇 | 400小時 | |
| 第一周 | 6/6 | 1/1 | 20/20 | |
| 第二周 | 245/251 | 1/2 | 18/38 | |
| 第三周 | 633/884 | 1/3 | 22/60 | |
| 第四周 | 305/1189 | 1/4 | 30/90 | |
| 第五周 | 410/1599 | 3/7 | 30/120 | |
| 第六周 | 1135/2734 | 3/10 | 30/150 | |
| 第七周 | 781/3515 | 3/13 | 30/180 | |
| 第八周 | 710/4225 | 3/16 | 30/210 |
嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進自己的計劃能力。這個工作學習中很重要,也很有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。
參考:軟件工程軟件的估計為什么這么難,軟件工程 估計方法
計劃學習時間:XX小時
實際學習時間:XX小時
改進情況:
(有空多看看現代軟件工程 課件
軟件工程師能力自我評價表)
參考資料
Java學習筆記(第8版)
- 《Java學習筆記(第8版)》學習指導
...
轉載于:https://www.cnblogs.com/thz666/p/10745982.html
總結
以上是生活随笔為你收集整理的学号 20175212童皓桢 《Java程序设计》第8周学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html中splice向数组添加元素,j
- 下一篇: 20175212童皓桢 《Java程序设