集合介面與BitArray

2021-05-27 10:17:29 字數 2500 閱讀 6285

一.c#中集合的介面:icollection

集合介面的初始化物件方式:

icollectionmycollect=new collection();

現在先來看乙個整數型別集合的介面

using system.collections.objectmode

//必須要有這個引用

icollectionmycollection = new collection();

mycollection.add(100);//增加元素

mycollection.add(22);

mycollection.add(30);

foreach (int x in mycollection)

console.writeline(x); //輸出元素

console.writeline("集合中元素的個數", mycollection.count);

mycollection.add(222);

mycollection.remove(22);//刪除元素

console.writeline("集合中元素的個數", mycollection.count);

console.writeline(mycollection.contains(22));//判斷集合中是否有這個元素

判讀集合中是否存在某個元素:mycollection.contains(x);有的話返回1,否則返回0;

將集合中的元素複製到乙個同樣大小的陣列中:

int myarray = new int[mycollection.count];

mycollection.copyto(myarray, 0);//從mycollection的第乙個元素開始

int myarray = new int[mycollection.count];

mycollection.copyto(myarray, 0);

//從mycollection的第乙個元素開始

console.writeline("xia現在比較下兩個物件中元素");

for (int i = 0; i 

console.write("in myarray ,",myarray[i]);

foreach (int x in mycollection)

console.writeline("in mycollection",x);

2只要按照上面介紹的方法就可以構造其他型別的泛型集合。

現在演示下另一型別的泛型集合:

icollectionanother = new collection();

//構造乙個字串型的集合

another.add("the ");

another.add("people's ");

another.add("republic ");

another.add("china ");

foreach(string str in another)

console.write(str);

該物件的輸出結果是:

3

二.bitarray 

bitarray類是乙個位元陣列,陣列的大小在建立物件的時候已經確定,每個資料元素只能表示乙個位元,元素的值只能是1與0,其中用true表示1,用false表示0,當用其他資料型別的元素初始化該物件時,那麼每個元素將占用該型別在記憶體中儲存長度的陣列空間,下表中式該類提供的特殊方法:

方法名字

方法的功能

andbitarray中的元素執行按位「與」運算

or按位「或」運算

not取反運算

xor異或運算

get/set

獲取或設計特定位置處的位設定為指定值

setall

將bitarray中的所有位設定為指定值

初始化乙個bitarray類

bitarray mybitarray = new bitarray(4);

mybitarray[0] = false;

mybitarray[1] = true;

mybitarray[2] = true;

mybitarray[3] = false;

displaybitarray("mybitarray", mybitarray);

console.writeline("after not()之後");

mybitarray.not();

displaybitarray("mybitarray", mybitarray);

4

當然這裡還定義了乙個方法專門用來輸出:

public static void displaybitarray(string arraylistname, bitarray mybitarray)

{ for (int i = 0; i 

console.writeline(arraylistname + "[" + i + "] = " + mybitarray[i]);

C 集合介面與集合類

c 開發經常用到.net框架為我們提供的集合介面和集合類,接下來做乙個總結,如有差錯,希望各位大神指正。首先是集合介面,自己畫了一張圖 嘿嘿,有點醜 來說明集合介面的繼承關係。個人覺得,了解集合介面,首先要把握他們的繼承關係。如上圖,所有的集合介面和集合類都繼承 實現ienumerable介面。ie...

c 基礎知識 集合之點陣列(BitArray)

bitarray 類管理乙個緊湊型的位值陣列,它使用布林值來表示,其中 true 表示位是開啟的 1 false 表示位是關閉的 0 當您需要儲存位,但是事先不知道位數時,則使用點陣列。您可以使用整型索引從點陣列集合中訪問各項,索引從零開始。下表列出了bitarray類的一些常用的屬性 屬性描述 c...

Set集合介面

set介面 set集合就像是乙個罐子,一旦把物件 丟進去 多個物件之間就沒有順序,set元素不可以重複 set判斷兩個物件是否相同不是使用 而是使用equals set t new hashset t.add aa t.add new string aa system.out.println t.a...