初識Collection

今天上午初識了Collection(容器)差购,代碼如下:
package collection;
import java.util.Collection;
import java.util.Iterator;
public class TestCollection {
public static <E> void main(String[] args) {
//Collection有2個子類 List和Set
Collection collection = new Collection<E>() {
//@return the number of elements in this collection
public int size() {
return 0;
}
//@return <tt>true</tt> if this collection contains no element
public boolean isEmpty() {
return false;
}
// Returns <tt>true</tt> if this collection contains the specified element.
public boolean contains(Object o) {
return false;
}
//@return an <tt>Iterator</tt>over the elements in this collection(返回一個迭代器,用于遍歷數(shù)組)
public Iterator<E> iterator() {
return null;
}
//@return an array containing all of the elements in this collection
public Object[] toArray() {
return null;
}
public <T> T[] toArray(T[] a) {
return null;
}

    public boolean add(E e) {
        return false;
    }
    //Removes a single instance of the specified element from this
    // collection, if it is present (optional operation).
    public boolean remove(Object o) {
        return false;
    }
    public boolean containsAll(Collection<?> c) {
        return false;
    }
    public boolean addAll(Collection<? extends E> c) {
        return false;
    }
    public boolean removeAll(Collection<?> c) {
        return false;
    }
    public boolean retainAll(Collection<?> c) {
        return false;
    }
    public void clear() {
        
    }
};

}
}

package collection;
import java.util.ArrayList;
import java.util.Date;
public class List {
public static void main(String[] args) {
/**
* List 常用子類 ArrayList(數(shù)組表店茶,其中可以放任意對象)底層實現(xiàn)是數(shù)組(查詢操作快,增刪改操作慢屹篓、線程不安全效率低)
* LinkedList(鏈表)底層實現(xiàn)是鏈表(鏈表查詢慢技肩,增刪改操作快、線程不安全效率低)
* Vector底層實現(xiàn)是數(shù)組酒甸,線程安全,效率低
* List list = new ArrayList();這是典型寫法魄健,左邊是接口右邊為實現(xiàn)類(父類引用指向子類對象即多態(tài))
*/
List list = new List();
System.out.println(list.getClass().getName());
ArrayList list2 = new ArrayList();

//list接口中定義了一個Object類的數(shù)組,其中可以放任意類型的對象
list2.add("123");//添加字符串對象String
list2.add(123);//此處編譯器自動將123包裝為integer類
list2.add(new Date());//添加時間對象Date
list2.add(new Dog());//添加自定義對象
System.out.println(list2.size());//打印數(shù)組中含有元素的長度(不是數(shù)組的長度插勤,ArrayList中定義的數(shù)組長度可變的)
list2.remove("123");//移除數(shù)組
System.out.println(list2.size());
System.err.println(list2.isEmpty());

ArrayList list3 = new ArrayList();
list3.add("abc");
list2.addAll(list3);//將list3中的所有對象放到list2
System.out.println(list2.size());
//根順序有關(guān)的操作
list2.get(0);//返回數(shù)組索引為0的對象
list2.set(0, "456");//將數(shù)組索引為0的對象替換成String對象"456"
list2.remove(0);//將數(shù)組索引為0的對象移除掉"
//List list4 = new ArrayList();//接口List引用來指向ArrayList對象

}

}

class Dog{

}
階段知識總結(jié):
【collection接口的概念】
1.collection表示一組對象沽瘦,其作用是收集數(shù)據(jù)
2.Collection函數(shù)庫即java.util包下的一些類與接口革骨。類用來產(chǎn)生對象,而接口是訪問數(shù)據(jù)的方式
3.Collection函數(shù)庫與數(shù)組的不同:
.數(shù)組容量是有限的析恋,Collection庫的容量可以調(diào)節(jié)
.Collection函數(shù)庫只能用來存放對象良哲,數(shù)組沒有限制
Collection接口是Collection層次結(jié)構(gòu)中的根接口,它定義了一些最基本的訪問方法助隧,讓我們能用統(tǒng)一的方式通過它和它的子類訪問數(shù)據(jù)
【Collection接口下的子類接口List臂外、Set(子類HashSet)與Map(子類HashMap)的區(qū)別】
List中存放的數(shù)據(jù)有序可重復(fù) Set中存放的數(shù)據(jù)無序不可重復(fù),后面?zhèn)魅氲南嗤瑪?shù)據(jù)會覆蓋掉前面的數(shù)據(jù)
Map(鍵值對):通過一個對象找到另一個對象
【接口可以實現(xiàn)設(shè)計和實現(xiàn)的分離】
【Object與String類中equals方法區(qū)別】
Object中equals方法比較的是2個對象的地址(是否為同一對象) String重寫了Object的equals比較的是2個字符串變量的內(nèi)容
【Array與LinkedList】
數(shù)組查詢操作快喇颁,增刪改操作慢漏健;鏈表查詢慢,增刪改操作快

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末橘霎,一起剝皮案震驚了整個濱河市蔫浆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌姐叁,老刑警劉巖瓦盛,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異外潜,居然都是意外死亡原环,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門处窥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來嘱吗,“玉大人,你說我怎么就攤上這事滔驾≮寺螅” “怎么了?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵哆致,是天一觀的道長绕德。 經(jīng)常有香客問我,道長摊阀,這世上最難降的妖魔是什么耻蛇? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮胞此,結(jié)果婚禮上臣咖,老公的妹妹穿的比我還像新娘。我一直安慰自己豌鹤,他們只是感情好亡哄,可當(dāng)我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布枝缔。 她就那樣靜靜地躺著布疙,像睡著了一般蚊惯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上灵临,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天截型,我揣著相機與錄音,去河邊找鬼儒溉。 笑死宦焦,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的顿涣。 我是一名探鬼主播波闹,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼涛碑!你這毒婦竟也來了精堕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蒲障,失蹤者是張志新(化名)和其女友劉穎歹篓,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體揉阎,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡庄撮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了毙籽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片洞斯。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖坑赡,靈堂內(nèi)的尸體忽然破棺而出巡扇,到底是詐尸還是另有隱情,我是刑警寧澤垮衷,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布厅翔,位于F島的核電站,受9級特大地震影響搀突,放射性物質(zhì)發(fā)生泄漏刀闷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一仰迁、第九天 我趴在偏房一處隱蔽的房頂上張望甸昏。 院中可真熱鬧,春花似錦徐许、人聲如沸施蜜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽翻默。三九已至缸沃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間修械,已是汗流浹背趾牧。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留肯污,地道東北人翘单。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像蹦渣,于是被迫代替她去往敵國和親哄芜。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法柬唯,類相關(guān)的語法忠烛,內(nèi)部類的語法,繼承相關(guān)的語法权逗,異常的語法美尸,線程的語...
    子非魚_t_閱讀 31,644評論 18 399
  • java筆記第一天 == 和 equals ==比較的比較的是兩個變量的值是否相等,對于引用型變量表示的是兩個變量...
    jmychou閱讀 1,502評論 0 3
  • 一、基本數(shù)據(jù)類型 注釋 單行注釋:// 區(qū)域注釋:/* */ 文檔注釋:/** */ 數(shù)值 對于byte類型而言...
    龍貓小爺閱讀 4,265評論 0 16
  • 小編費力收集:給你想要的面試集合 1.C++或Java中的異常處理機制的簡單原理和應(yīng)用堪滨。 當(dāng)JAVA程序違反了JA...
    八爺君閱讀 4,594評論 1 114
  • 來看真的片子胯陋,不怕你們說,真正的原因就是因為顏值袱箱,對劇情演技什么的真的不抱太大期望遏乔,實話說,劇情不狗血发笔,但是很亂盟萨,...
    安安編瞎話閱讀 346評論 0 0