C# 中的 BitArray函数

首页 / C#入门教程 / C# 中的 BitArray函数

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

BitArray方法和属性

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

Sr.No. Property & 描述
1

Count

获取BitArray中包含的元素数。

2

IsReadOnly

获取一个值,该值指示BitArray是否为只读。

3

Item

获取或设置BitArray中特定位置的位的值。

4

Length

获取或设置BitArray中的元素数。

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

Sr.No. Method & 描述
1

public BitArray and(BitArray value);

执行按位AND操作。

链接:https://www.learnfk.comhttps://www.learnfk.com/csharp/csharp-bitarray.html

来源:LearnFk无涯教程网

2

public bool get(Int Index);

获取BitArray中特定位置的位的值。

3

public BitArray not();

反转当前BitArray中的所有位值,以便将设置为true的元素更改为false,将设置为false的元素更改为true。

4

public BitArray or(BitArray value);

执行按位OR操作。

5

public void set(int index,bool value);

将BitArray中特定位置的位设置为指定值。

6

public void SetAll(Bool Value);

将BitArray中的所有位设置为指定值。

7

public BitArray Xor(BitArray value);

对当前BitArray中的元素对指定BitArray中的相应元素执行逐位异或操作。

无涯教程网

下面的示例演示BitArray类的用法

using System;
using System.Collections;

namespace CollectionsApplication {
   class Program {
      static void Main(string[] args) {
         //creating two  bit arrays of size 8
         BitArray ba1 = new BitArray(8);
         BitArray ba2 = new BitArray(8);
         
         byte[] a = { 60 };
         byte[] b = { 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");
         
         for (int i = 0; i < ba1.Count; i++) {
            Console.Write("{0, -6} ", ba1[i]);
         }
         Console.WriteLine();
         
         //content of ba2
         Console.WriteLine("Bit array ba2: 13");
         
         for (int i = 0; i < ba2.Count; i++) {
            Console.Write("{0, -6} ", ba2[i]);
         }
         Console.WriteLine();
         BitArray ba3 = new BitArray(8);
         ba3 = ba1.And(ba2);
         
         //content of ba3
         Console.WriteLine("Bit array ba3 after AND operation: 12");
         
         for (int i = 0; i < ba3.Count; i++) {
            Console.Write("{0, -6} ", ba3[i]);
         }
         Console.WriteLine();
         ba3 = ba1.Or(ba2);
         
         //content of ba3
         Console.WriteLine("Bit array ba3 after OR operation: 61");
         
         for (int i = 0; i < ba3.Count; i++) {
            Console.Write("{0, -6} ", ba3[i]);
         }
         Console.WriteLine();

         Console.ReadKey();
      }
   }
}

编译并执行上述代码时,将生成以下输出-

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 

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

数据结构与算法之美 -〔王争〕

从0打造音视频直播系统 -〔李超〕

TensorFlow 2项目进阶实战 -〔彭靖田〕

全链路压测实战30讲 -〔高楼〕

大厂广告产品心法 -〔郭谊〕

B端产品经理入门课 -〔董小圣〕

零基础GPT应用入门课 -〔林健(键盘)〕

AI大模型系统实战 -〔Tyler〕

互联网人的数字化企业生存指南 -〔沈欣〕

好记忆不如烂笔头。留下您的足迹吧 :)