課程地址:https://www.imooc.com/video/2415java
List(序列)、Queue(隊列)可重複排列有序的,Set(集)不可重複無序。list和set經常使用。數組
ArrayList(數組序列),LinkedList(鏈表),HashSet(哈希集)數據結構
HashMap(哈希表)框架
子接口-實現類ide
collection類中儲存的是一個一個獨立的對象,map內部有些特殊,內部能夠提供一些映射測試
文檔看spa
注意:public的屬性在實際開發中應該私有化,經過get和set訪問.net
學生類建立完了對象
構造初始化,而且導入hashset包接口
建立備選課程類,完成
構造存放備選課程的list,實例化,導入Arraylist包
強轉
增長主程序
add方法的添加
另外一種方法:
異常:數組下標越界
經過addAll()方法添加集合元素
增長課程1,數據結構
發現順序有些問題
修改課程順序
經過迭代器遍歷:
迭代器自己也是一個接口
迭代器只是遍歷元素的,不是存儲
for each()方法(迭代器方法的一中簡便寫法):
remove()方法:
remove()方法2:
removeAll()方法:
測試添加時不是一個類型對象
跑出異常
聲明成功一個帶有泛型的list
聲明成功一個帶有泛型的list的屬性Arraylist成功
添加泛型會在編譯期間進行檢查,報錯
編譯器報錯
手動存在course裏添加一個無參構造器:
不報錯
修改註釋
修改學生類的泛型
看到4.11的3分20
把ListTest.java中testGet()方法拷貝
拷貝在上圖所示區域中
註釋部分
拷貝ListTest.java中的testForEach()方法
set中元素是無需的,不可重複
測試時否不可重複:
只能添加一次
主程序裏調用方法