bitarray 類管理乙個緊湊型的位值陣列,它使用布林值來表示,其中 true 表示位是開啟的(1),false 表示位是關閉的(0)。
當您需要儲存位,但是事先不知道位數時,則使用點陣列。您可以使用整型索引從點陣列集合中訪問各項,索引從零開始。
下表列出了bitarray類的一些常用的屬性:
屬性描述
count
獲取 bitarray 中包含的元素個數。
isreadonly
獲取乙個值,表示 bitarray 是否唯讀。
item
獲取或設定 bitarray 中指定位置的位的值。
length
獲取或設定 bitarray 中的元素個數。
下表列出了bitarray類的一些常用的方法:
序號方法名 & 描述
1public bitarray and( bitarray value );
對當前的 bitarray 中的元素和指定的 bitarray 中的相對應的元素執行按位與操作。
2public bool get( int index );
獲取 bitarray 中指定位置的位的值。
3public bitarray not();
把當前的 bitarray 中的位值反轉,以便設定為 true 的元素變為 false,設定為 false 的元素變為 true。
4public bitarray or( bitarray value );
對當前的 bitarray 中的元素和指定的 bitarray 中的相對應的元素執行按位或操作。
5public void set( int index, bool value );
把 bitarray 中指定位置的位設定為指定的值。
6public void setall( bool value );
把 bitarray 中的所有位設定為指定的值。
7public bitarray xor( bitarray value );
對當前的 bitarray 中的元素和指定的 bitarray 中的相對應的元素執行按位異或操作。
下面的例項演示了點陣列(bitarray)的使用:
using當上面的**被編譯和執行時,它會產生下列結果:system
;using
system
.collections
;namespace
;byte
b =;// 把值 60 和 13 儲存到點陣列中
ba1
=new
bitarray(a
);ba2
=new
bitarray(b
);// ba1 的內容
console
.writeline
("bit array ba1: 60"
);for
(inti =
0;i <
ba1.
count;i
++) "
,ba1[i
]);}
console
.writeline
();// ba2 的內容
console
.writeline
("bit array ba2: 13"
);for
(inti =
0;i <
ba2.
count;i
++) "
,ba2[i
]);}
console
.writeline
();bitarray
ba3
=new
bitarray(8
);ba3
=ba1
.and
(ba2
);// ba3 的內容
console
.writeline
("bit array ba3 after and operation: 12"
);for
(inti =
0;i <
ba3.
count;i
++) "
,ba3[i
]);}
console
.writeline
();ba3
=ba1.or
(ba2
);// ba3 的內容
console
.writeline
("bit array ba3 after or operation: 61"
);for
(inti =
0;i <
ba3.
count;i
++) "
,ba3[i
]);}
console
.writeline
();console
.readkey
();}
}}
bitarray ba1:60
false
false
true
true
true
true
false
false
bitarray ba2:13
true
false
true
true
false
false
false
false
bitarray ba3 after and operation:12
false
false
true
true
false
false
false
false
bitarray ba3 after or operation:61
true
false
true
true
false
false
false
false
c 基礎知識 集合之堆疊(Stack)
堆疊 stack 代表了乙個後進先出的物件集合。當您需要對各項進行後進先出的訪問時,則使用堆疊。當您在列表中新增一項,稱為推入元素,當您從列表中移除一項時,稱為彈出元素。下表列出了stack類的一些常用的屬性 屬性描述 count 獲取 stack 中包含的元素個數。下表列出了stack類的一些常用...
python基礎知識之集合
鑑於前面已經對列表的一些用法進行過介紹,本篇文章就從元組開始說 首先,元組和列表的形式上是差不多的,都是儲存大量資料的一組集合,但是也是有不同點的 下面舉個列子 元組 test 1,3,xx 列表 test1 1,2,xx 從上面的列子可以看出在定義元組和列表時需要注意的不同,元組用的小括號,而列表...
Python基礎知識之集合
一般方式 將該集合的所有元素置於乙個大括號內,以逗號分隔。set1 set1 但上面這種方式不能用於建立乙個空集合 set0 type set0 乙個空的大括號會被認為是乙個空的字典。用set 建立集合 set a 5,chat 89,2.55 若建立乙個空集合,set 內不設定引數。如果集合中的元...