• C# 位数组


    前言

    如果需要处理许多位,就可以使用类 BitArray 和结构 BitVector32。BitArray 位于命名空间System.Collections,BitVector32 位于命名空间 System.Collections.Specialized。

     

    一、BitArray  类   引用类型

    类 BitArray 是一个引用类型,包含一个 int 数组,每 32 位使用一个新整数

    个人理解:BitArray相当于一个bool类型的数组bool[]

    官方解释:类 BitArray 是一个引用类型,包含一个 int 数组,每 32 位使用一个新整数

    Eg

     

    其他方法:And(), Or(), Xor()、Get()

    Eg

     

     

    二、BitVector32  结构 值类型

    如果事先知道需要的位数,就可以使用BitVector32 结构替代 BitArray。BitVector32 效率较高,因为它是一个值类型,在整数栈上存储位。一个整数可以存储 32 位。*['vektə] n. 矢量;带菌者;航线 vt. 用无线电导航

     

     Eg

     

     

     除了用CreateMask()方法创建掩码之外,还可以自己定义掩码,也可以一次设置多个位,八进制010与二进制值1010相同。可以这样表达

    bits1[010] = true;

     

     

     

     

    区别

    这两种类型最重要的区别是,BitArray 可以重新设置大小,如果事先不知道需要的位数,就可以使用 BitArray,它可以包含非常多的位。BitVector32是基于栈的,因此比较快。BitVector32仅包含 32 位,存储在一个整数中。


    作者:PEPE
    出处:http://pepe.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    2019.12.14
    2019.12.17
    Jquery中用offset().top和offsetTop的比较
    wpquery调用前几篇文章的方法
    模仿百度百科的滚轮事件
    WordPress的默认循环
    WordPress自定义菜单和修改去除多余的css
    WordPress自定义循环
    WordPress创建多个page页面模板文件
    玩玩
  • 原文地址:https://www.cnblogs.com/PEPE/p/2564017.html
Copyright © 2020-2023  润新知