VB.Net 教程:BitArray

返回到:VB.Net – 集合

BitArray类管理位值的压缩数组,它表示为布尔值,其中true表示该位为(1),false表示位为off(0)。

它用于需要存储位但不提前知道位数。 您可以通过使用从零开始的整数索引来访问BitArray集合中的项目。

BitArray类的属性和方法

下表列出了BitArray类的一些常用属性:

属性描述
Count获取BitArray中包含的元素数。
IsReadOnly获取一个指示BitArray是否为只读的值。
Item获取或设置位在BitArray中特定位置的值。
Length获取或设置BitArray中的元素数。

下表列出了BitArray类的一些常用方法:

S.N方法名称和用途
1Public Function And (value As BitArray) As BitArray对当前BitArray中的元素与指定的BitArray中的相应元素执行按位AND运算。
2Public Function Get (index As Integer) As Boolean获取位在BitArray中特定位置的值。
3Public Function Not As BitArray反转当前BitArray中的所有位值,以便将设置为true的元素更改为false,将设置为false的元素更改为true。
4Public Function Or (value As BitArray) As BitArray对当前BitArray中的元素与指定的BitArray中的相应元素执行按位或运算。
5Public Sub Set (index As Integer, value As Boolean )将BitArray中特定位置的位设置为指定值。
6Public Sub SetAll (value As Boolean)将BitArray中的所有位设置为指定的值。
7Public Function Xor (value As BitArray) As BitArray对当前BitArray中的元素与指定的BitArray中的相应元素执行逐位异或操作。

示例:

下面的例子演示了使用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 

返回到:VB.Net – 集合

作者:terry,如若转载,请注明出处:https://www.web176.com/vbnet_api/11492.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2023年3月1日
下一篇 2023年3月2日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注