資源描述:
《java-實驗七-對象集合-實驗報告.doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、實驗七對象集合的組織實驗目標:1.了解Collection、List、Set、Map等常用數(shù)據(jù)結構的層次結構2.掌握LinkList、Vector、ArrayList、HashTable、HashMap等類的用法3.掌握Enumeration(枚舉)及Iterator(迭代器)的遍歷用法4.了解自學HashSet、TreeSet這兩個Set接口下的重要實現(xiàn)類5.了解自學比較器接口實驗任務:1.填空List接口的特點是元素__有__(有
2、無)順序,___可以___(可以
3、不可以)重復;Set接口的特點是元素__無___(有
4、無)順序,__
5、不可以____(可以
6、不可以)重復;Map接口的特點是元素是鍵、值對象,其中__鍵__可以重復,_值對象__不可以重復2.(List)有如下代碼:importjava.util.*;publicclassTestList{publicstaticvoidmain(Stringargs[]){Listlist=newArrayList();list.add(“Hello”);list.add(“World”);list.add(1,“Learn”);list.add(1,“Java”);printList(list);}publicsta
7、ticvoidprintList(Listlist){//1}}要求:1)把//1處的代碼補充完整,要求輸出list中所有元素的內(nèi)容,請使用三種方式來實現(xiàn)(課本227頁,Iterator、增強for循環(huán),普通循環(huán))。2)三種代碼與執(zhí)行結果截圖1、用Iterator實現(xiàn)的代碼如下:packagezi;importjava.util.*;publicclassEx7_2{publicstaticvoidmain(Stringargs[]){Listlist=newArrayList();list.add("Hello");list.add(
8、"World");list.add(1,"Learn");list.add(1,"Java");printList(list);}publicstaticvoidprintList(Listlist){//1Iteratoritor=list.iterator();while(itor.hasNext()){System.out.println(itor.next());}}}其運行結果截圖如下:2、用增強for循環(huán)的代碼如下:packagezi;importjava.util.*;publicclassEx7_2{publicstat
9、icvoidmain(Stringargs[]){Listlist=newArrayList();list.add("Hello");list.add("World");list.add(1,"Learn");list.add(1,"Java");printList(list);}publicstaticvoidprintList(Listlist){//1for(Objecto:list){System.out.println(o);}}}其運行結果截圖如下:3、用普通循環(huán)的代碼如下:packagezi;importjava.util
10、.*;publicclassEx7_2{publicstaticvoidmain(Stringargs[]){Listlist=newArrayList();list.add("Hello");list.add("World");list.add(1,"Learn");list.add(1,"Java");printList(list);}publicstaticvoidprintList(Listlist){//1for(inti=0;i11、;}}}其運行結果截圖如下:3)如果要把實現(xiàn)類由ArrayList換為LinkedList,應該改哪一句?怎么修改?ArrayList和LinkedList使用上有什么區(qū)別?請書面回答答:Listlist=newLinkedList();ArrayList:查詢數(shù)據(jù)速度較快,插入和刪除比較慢,線程非安全。LinkedList:查詢數(shù)據(jù)速度較慢,插入和刪除比較快,線程安全。4)如果要把實現(xiàn)類由ArrayList換為Vector,應該改哪一句?怎修改?ArrayList和Vector使用上有什么區(qū)別?請書面回答。答:Listlist=new
12、Vector();Vector:以線性結構存儲,查詢速度較慢,線程安全。3.(List)已知有一個Worker類如下:publicclassWorker{privateintage;privateStrin