BitArray類管理位值的壓縮數(shù)組,它表示為布爾值,其中true表示該位為(1),false表示位為off(0)。
它用于需要存儲位但不提前知道位數(shù)。 您可以通過使用從零開始的整數(shù)索引來訪問BitArray集合中的項目。
下表列出了BitArray類的一些常用屬性:
屬性 | 描述 |
---|---|
Count | 獲取BitArray中包含的元素數(shù)。 |
IsReadOnly | 獲取一個指示BitArray是否為只讀的值。 |
Item | 獲取或設(shè)置位在BitArray中特定位置的值。 |
Length | 獲取或設(shè)置BitArray中的元素數(shù)。 |
S.N | 方法名稱和用途 |
---|---|
1 | Public Function And (value As BitArray) As BitArray 對當(dāng)前BitArray中的元素與指定的BitArray中的相應(yīng)元素執(zhí)行按位AND運算。 |
2 | Public Function Get (index As Integer) As Boolean 獲取位在BitArray中特定位置的值。 |
3 | Public Function Not As BitArray 反轉(zhuǎn)當(dāng)前BitArray中的所有位值,以便將設(shè)置為true的元素更改為false,將設(shè)置為false的元素更改為true。 |
4 | Public Function Or (value As BitArray) As BitArray 對當(dāng)前BitArray中的元素與指定的BitArray中的相應(yīng)元素執(zhí)行按位或運算。 |
5 | Public Sub Set (index As Integer, value As Boolean ) 將BitArray中特定位置的位設(shè)置為指定值。 |
6 | Public Sub SetAll (value As Boolean) 將BitArray中的所有位設(shè)置為指定的值。 |
7 | Public Function Xor (value As BitArray) As BitArray 對當(dāng)前BitArray中的元素與指定的BitArray中的相應(yīng)元素執(zhí)行逐位異或操作。 |
下面的例子演示了使用BitArray類:
Imports System.Collections
Module collections
Sub Main()
'creating two bit arrays of size 8
Dim ba1 As BitArray = New BitArray(8)
Dim ba2 As BitArray = New BitArray(8)
Dim a() As Byte = {60}
Dim b() As Byte = {13}
'storing the values 60, and 13 into the bit arrays
ba1 = New BitArray(a)
ba2 = New BitArray(b)
'content of ba1
Console.WriteLine("Bit array ba1: 60")
Dim i As Integer
For i = 0 To ba1.Count - 1
Console.Write("{0 } ", ba1(i))
Next i
Console.WriteLine()
'content of ba2
Console.WriteLine("Bit array ba2: 13")
For i = 0 To ba2.Count -1
Console.Write("{0 } ", ba2(i))
Next i
Console.WriteLine()
Dim ba3 As BitArray = New BitArray(8)
ba3 = ba1.And(ba2)
'content of ba3
Console.WriteLine("Bit array ba3 after AND operation: 12")
For i = 0 To ba3.Count -1
Console.Write("{0 } ", ba3(i))
Next i
Console.WriteLine()
ba3 = ba1.Or(ba2)
'content of ba3
Console.WriteLine("Bit array ba3 after OR operation: 61")
For i = 0 To ba3.Count -1
Console.Write("{0 } ", ba3(i))
Next i
Console.WriteLine()
Console.ReadKey()
End Sub
End Module
Bit array ba1: 60 False False True True True True False False Bit array ba2: 13 True False True True False False False False Bit array ba3 after AND operation: 12 False False True True False False False False Bit array ba3 after OR operation: 61 True False True True False False False False
更多建議: