作業(yè)

Collection 接口和 Collections 類都是做什么用的 ?

Collection是集合類的頂級接口。它提供對集合對象進(jìn)行基本操作的通用接口方法。它的直接繼承接口有List,Set和Queue.
Collections是一個包裝類。此類完全由在 collection 上進(jìn)行操作或返回 collection 的靜態(tài)方法組成。它不能被實例化,起到一個工具類的作用

Collection 接口有幾個子接口 ?Map 接口有父接口么 ?

三個子接口,List Set Queue 沒有

List 、 Set 、 Map 三個接口有什么特點(diǎn) ?

List接口繼承Collection接口,稱為有序集合,允許有重復(fù)的元素。

Set接口常用類有HashSet和TreeSet,HashSet儲存順序為無序,TreeSet儲存順序為有序不允許元素的重復(fù)。

Map接口用來處理建-值映射數(shù)據(jù)的儲存,可以儲存多個元素。
請簡述哈希表(散列表)

根據(jù)關(guān)鍵碼值而直接進(jìn)行訪問得數(shù)據(jù)結(jié)構(gòu),通過把關(guān)鍵碼值映射到表中的一個位置來訪問記錄,以加快查找的速度。

以下哪個集合接口支持通過字符串主鍵檢索對象 A

A.Map

B.Set

C.List

D.Collection

以下哪些語句用于創(chuàng)建一個Map實例?D

A.Map m = new Map();

B.Map m = new Map(init capacity,increment capacity);

C.Map m = new Map(new Collection());

D.以上均不行

以下代碼的執(zhí)行結(jié)果是?

public class Example {

public static void main(String[] args) {

 String s1 = "abc";
 String s2 = "def";
 String s3 = "def";

 List<String> list = new ArrayList<String>();
 list.add(s1);
 list.add(s2);
 list.add(s3);
 
 for (String string : list) {
     System.out.println( string );
 }
 
 System.out.println("-------------------");
 
 Set<String> set = new HashSet<>();
 set.add(s1);
 set.add(s2);
 set.add(s3);
 
 for (String string : set) {
     System.out.println( string );
 }

}
}
執(zhí)行結(jié)果 abc def def abc def

以下代碼執(zhí)行結(jié)果是?TreeMap和 HashMap 的區(qū)別是什么 ?

執(zhí)行結(jié)果one =1 three = 3 two = 2 TreeMap 是有序的 HashMap是無序的**

public class Example {

public static void main(String[] args) {

 TreeMap<String, String> map = new TreeMap<String, String>();
 map.put("one", "1");
 map.put("two", "2");
 map.put("three", "3");
 displayMap(map);

}

static void displayMap(TreeMap map) {

 Collection<String> c = map.entrySet();
 Iterator<String> i = c.iterator();

 while (i.hasNext()) {
     Object o = i.next();
     System.out.print(o.toString());
 }

}
}
Vector、ArrayList 和 LinkedList 有什么區(qū)別 ?

ector是線程安全,性能比ArrayList要差 ArrayList重速度,輕安全,是線程的非安全,需要程序員自己管理線程的同步問題 .Vector和ArrayList有利于節(jié)約空間
LinkedList是link的雙向數(shù)據(jù)列表,可當(dāng)作堆棧、隊列、雙端隊列。鏈表是一種在物理上非連續(xù)、非順序的數(shù)據(jù)結(jié)構(gòu),由若干節(jié)點(diǎn)node所組成

Arrays.ArrayList 和 java.util.ArrayList 有什么區(qū)別 ?

ArrayList是List接口實現(xiàn)類
Arrays.ArrayList 沒有add()方法的,修改元素是通過之前傳過來的數(shù)組進(jìn)行修改

Hashtable和HashMap的區(qū)別

1 Hashtable繼承自Dictionary類 ,而HashMap實現(xiàn)了Map接口
2 Hashtable的方法是同步的,而HashMap的方法不是,消耗一定度資源要增加一些步驟控制增加了處理過程,Hashtable不允許null值(Key和Value都不允許)。

分別使用 HashMap 和 List 以及數(shù)組統(tǒng)計數(shù)組中相同的值出現(xiàn)的次數(shù)

兩次

String[] array = {"abc" , "ABC" , "123" , "def" , "_" , "def" , "abc"};
請寫出 Iterator 迭代器的優(yōu)點(diǎn)

java迭代器查找的唯一操作就是依靠調(diào)用next,而在執(zhí)行查找任務(wù)的同時,迭代器的位置也在改變.
Iterator迭代器remove方法會刪除上次調(diào)用next方法返回的元素.這也意味之remove方法和next有著很強(qiáng)的依賴性.如果在 調(diào)用remove之前沒有調(diào)用next是不合法的 .這個接口衍生出了,java集合的迭代器.java集合的迭代器使用

請寫出循環(huán) List 、Set、Map 的代碼

for( 集合元素類型 i : list ) {

 System.out.println(i)

 }  

  for( 集合元素類型  i : Set ) {

  System.out.println(i)

 }  
 for (Map.Entry<String,String> m : map01.entrySet()) {
System.out.println(m);

}

以下哪個集合接口支持元素排序 A

A.Collection

B.Set

C.List

D.Map

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Collection 接口和 Collections 類都是做什么用的 ?Collection接口和Collect...
    朱夢軒閱讀 395評論 0 0
  • 1. Collection 接口和 Collections 類都是做什么用的 ? **Collection:集...
    杜衛(wèi)東閱讀 299評論 0 0
  • Collection 接口和 Collections 類都是做什么用的 ?Collection:集合的抽象數(shù)據(jù)類型...
    開心_1acc閱讀 132評論 0 0
  • Collection 接口和 Collections 類都是做什么用的 ? Collection:集合的抽象數(shù)據(jù)類...
    eeb9d901fda2閱讀 184評論 0 0
  • Collection 接口和 Collections 類都是做什么用的 ?Collection:集合的抽象數(shù)據(jù)類型...
    常皓欽閱讀 237評論 0 0

友情鏈接更多精彩內(nèi)容