黑馬程式設計師 集合

2021-07-06 03:47:42 字數 3511 閱讀 6312

string類

字串是乙個特殊的物件。

字串一旦初始化就不可以被改變。

string str = 「abc」;

string str1 = new string(「abc」);

string類部分方法

char charat(int index)

int length()

char tochararray();

int indexof(string str);

boolean endswith(string str);

string split(string reg); 

string substring(int index);

string(char arr);

stringbuffer

. 字串的組成原理就是通過該類實現的。

. stringbuffer可以對字串內容進行增刪。

. stringbuffer是乙個容器。

. 很多方法與string相同。

. stingbuffer是可變長度的。

stringbuffer特有方法

. . 

stringbuffer delete(int start, int end );

. stringbuffer insert(int index,string str);

. stringbuffer reverse();

. jdk1.5出現乙個stringbuilder,區別是stringbuffer是同步的,stringbuilder是非同步的。

基本資料型別物件包裝類

將基本資料型別封裝成物件的好處在於可以在物件中定義更多的功能方法操作該資料。

. 常用的操作之一:用於基本資料型別與字串之間的轉換。

. 例:integer的parseint方法,intvalue方法。

. 例程

基本資料型別物件包裝類新特性

jdk1.5以後,簡化了定義方式。

. integer x = new integer(4);可以直接寫成

. integer x = 4;//自動裝箱。

. x = x + 5;//自動拆箱。通過intvalue方法。

. 需要注意:

. 在使用時,integer x = null;上面的**就會出現nullpointerexception。

集合類. 

為什麼出現集合類?

. 物件導向語言對事物的體現都是以物件的形式,所以為了方便對多個物件的操作,就對物件進行儲存,集合就是儲存物件最常用的一種方式。

. 陣列和集合類同是容器,有何不同?

. 陣列雖然也可以儲存物件,但長度是固定的;集合長度是可變的。陣列中可以儲存基本資料型別,集合只能儲存物件。

. 集合類的特點

. 集合只用於儲存物件,集合長度是可變的,集合可以儲存不同型別的物件。

集合框架的構成及分類

集合框架中的常用介面

collection介面有兩個子介面:

list(列表),set(集)

list:可存放重複元素,元素訪問是有序的。

set:不可以存放重複元素,元素訪問是無序 

的。list介面中常用類

. vector:執行緒安全,但速度慢,已被arraylist替代。

. arraylist:執行緒不安全,查詢速度快。

. linkedlist:鍊錶結構,增刪速度快。

取出list集合中元素的方式:

. get(int index):通過腳標獲取元素。

. iterator():通過迭代方法獲取迭代器物件。

迭代迭代是取出集合中元素的一種方式。

. 因為collection中有iterator方法,所以每乙個子類集合物件都具備迭代器。

. 用法:

iterator iter = l.iterator();

while(iter.hasnext())

for(iterator iter = iterator();iter.hasnext(); )

迭代注意事項

. 迭代器在collcection介面中是通用的,它替代了vector類中的enumeration(列舉)。

. 迭代器的next方法是自動向下取元素,要避免出現nosuchelementexception。

. 迭代器的next方法返回值型別是object,所以要記得型別轉換。

set介面中常用的類

. hashset:執行緒不安全,訪問速度快。

treeset:執行緒不安全,可以對set集合中的元素進行排序。

set集合元素唯一性原因

hashset:通過equals方法和hashcode方法來保證元素的唯一性。

. treeset:通過compareto或者compare方法中的來保證元素的唯一性。元素是以二叉樹的形式存放的。

泛型jdk1.5以後出現的機制

. 泛型出現的原因

. 泛型出現的好處

. 泛型的書寫格式

. 自定義泛型類

泛型的特點

. 提高了程式的安全性

. 將執行期遇到的問題轉移到了編譯期

. 省去了型別強轉的麻煩

. 泛型類的出現優化了程式設計

map集合

map與collection不同

. map集合儲存於取出元素的方式

. map集合的特點

. map集合中常用類

map與collection

map與collection在集合框架中屬並列存在

. map儲存的是鍵值對

. map儲存元素使用put方法,collection使用add方法

. map集合沒有直接取出元素的方法,而是先轉成set集合,在通過迭代獲取元素

. map集合中鍵要保證唯一性

map集合常用類

hashtable:執行緒安全,速度慢,不允許存放null鍵,null值,已被hashmap替代。

. hashmap:執行緒不安全,速度快,允許存放null鍵,null值。

. treemap:對鍵進行排序,排序原理與treeset相同。

集合框架中的工具類

collections

. 對集合進行查詢

. 取出集合中的最大值,最小值

. 對list集合進行排序

. ……

. arrays

. 將陣列轉成list集合

. 對陣列進行排序

. 對陣列進行二分查詢

新增for語句

collection在jdk1.5後出現的父介面iterable就是提供了這個for語句。

. 格式:

for(資料型別變數名: 陣列或集合)

. 簡化了對陣列,集合的遍歷。

函式的另一種表現形式

返回值型別 

函式名(引數型別… 形式引數)

. 其實接收的是乙個陣列,可以指定實際引數個數。

黑馬程式設計師 集合

collection list 元素是有序的,元素可以重複。因為該集合體系有索引。arraylist 底層的資料結構使用的是陣列結構。特點 查詢速度很快。但是增刪稍慢。執行緒不同步。linkedlist 底層使用的鍊錶資料結構。特點 增刪速度很快,查詢稍慢。執行緒不同步。vector 底層是陣列資料...

黑馬程式設計師 集合

asp.net unity開發 net培訓 期待與您交流!1.集合類 為什麼會出現集合類?面對物件語言對事物的體現都是以物件的形式,所以為了方便對多個物件的操作,就對物件進行儲存,集合就是儲存物件最常用的一種方式。集合類的特點 集合只用於儲存物件,集合的長度是可變的,集合可以儲存不同型別的物件。集合...

黑馬程式設計師 集合

集合 string類 字串是乙個特殊的物件。字串一旦初始化就不可以被改變。string str abc string str1 new string abc 基本資料型別物件包裝類 將基本資料型別封裝成物件的好處在於可以在 物件中定義更多的功能方法操作該資料。常用的操作之一 用於基本資料型別與字串 ...