見過一句夸張的話,叫做“沒有閱讀過jdk源碼的人不算學(xué)過java”。從今天起開始精讀源碼。而適合精讀的源碼無非就是java.io,.util和.lang包下的類。
為趙縣等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及趙縣網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、成都網(wǎng)站制作、趙縣網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
面試題中對(duì)于集合的考察還是比較多的,所以我就先從集合的源碼開始看起。
(一)首先是Collection接口。
Collection是所有collection類的根接口;Collection繼承了Iterable,即所有的Collection中的類都能使用foreach方法。
/** * Collection是所有collection類的根接口; * Collection繼承了Iterable,即所有的Collection中的類都能使用foreach方法。 * @author WGS * @param*/ public interface Collection extends Iterable { //返回集合中元素的大小。(如果此大小值超過Integer.MAX_VALUE,就直接返回Integer.MAX_VALUE) int size(); //判斷集合是否為空 Boolean isEmpty(); //判斷集合是否包含元素o(注意元素e是否為null及類型是否兼容問題) Boolean contains(Object o); //返回集合中元素的迭代器(順序不能保證,除非集合指定了順序) Iterator iterator(); //以數(shù)組的形式返回集合中的所有元素,數(shù)組是安全 Object[] toArray(); //以數(shù)組形式返回指定數(shù)組類型的集合元素 T[] toArray(T[] a); //此方法可用來判斷集合中是否含有元素e;是-false,否-true(在set,map中會(huì)經(jīng)常調(diào)用這個(gè)方法,在編程題時(shí)很有用) Boolean add(E e); //從集合中移除指定的元素 Boolean remove(Object o); //用來判斷是否含有指定集合中的所以元素 Boolean containsAll(Collection<?> c); //將指定集合中的所有元素添加至調(diào)用者的集合中 Boolean addAll(Collection<? extends E> c); //移除與指定集合相同的元素(即移除兩集合交集部分) Boolean removeAll(Collection<?> c); //保留與指定集合中相同的元素(即移除與指定集合不同的元素) Boolean retainAll(Collection<?> c); //清空集合 void clear(); //判斷與指定元素是否相等 Boolean equals(Object o); //返回集合的哈希碼值 int hashCode(); }
總結(jié)
以上就是本文關(guān)于jdk源碼閱讀Collection詳解的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!