BitArray的使用
BitArray類能有效的處理bool值的集合,其可以動態調整大小,而且在需要時新增二進位制位不用擔心陣列越界問題。
1.通過例項化BitArray物件可以建立BitArray,同時將陣列內的二進位制位數量傳給構造器
BitArray BitSet=new BitArray(32);
這個BitArray的32個位都被設定成false.
2.如果想將他們設定成為true,可以下面這樣例項化陣列:
BitArray BitSet=new BitArray(32,true);
3.使用位元組值的陣列來例項化BitArray
byte[]ByteSet=new byte[]{1,2,3,4,5};
BitArray BitSet=new BitArray(ByteSet);
BitSet現在包含了位元組值為1,2,3,4,5的二進位制位
1.通過例項化BitArray物件可以建立BitArray,同時將陣列內的二進位制位數量傳給構造器
BitArray BitSet=new BitArray(32);
這個BitArray的32個位都被設定成false.
2.如果想將他們設定成為true,可以下面這樣例項化陣列:
BitArray BitSet=new BitArray(32,true);
3.使用位元組值的陣列來例項化BitArray
byte[]ByteSet=new byte[]{1,2,3,4,5};
BitArray BitSet=new BitArray(ByteSet);
BitSet現在包含了位元組值為1,2,3,4,5的二進位制位
二進位制位儲存在BitArray中,而且最高有效為(索引為0)在最左側的位置上。
using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
//功能:輸出1,2,3,4的二進位制值
internal class Chapter6
{
private static void Main()
{
int bits;
string[]binNumber=new string[8]; //定義8個字元的陣列
int binary;
byte[] ByteSet=new byte[]{1,2,3,4,5}; //定義5個二進位制位的陣列
BitArray BitSet=new BitArray(ByteSet); //定義位陣列
bits = 0; //
binary = 7;
for (int i = 0; i <= BitSet.Count - 1; i++)
{//填充陣列
if (BitSet.Get(i) == true) //獲取每一位如果真賦值為1,假賦值為0
binNumber[binary] = "1";
else
{
binNumber[binary] = "0";
}
binary--;
bits++;
if (bits%8 == 0)
{
binary = 7;
bits = 0;
for (int j = 0; j <= 7; j++)
{
Console.Write(binNumber[j]);
}
Console.WriteLine();
}
}
}
}
相關屬性:
Set方法為數值設定一個特殊的位
BitArray.Set(bit,value)
bit為索引,value為值(bool型別)
BitSet.SetAll(False);為所有位設定值
bitSet1.or(bitSet2) //進行位運算(或)
bitSet.Clone() 返回一個淺層的克隆
bitSet.Copy(arrBits); //將BitArray的內容複製給一個命名為arrBits的標準陣列
相關文章
- Scrapy框架的使用之Scrapyrt的使用框架
- ActiveMQ的使用及整合spring的使用例項MQSpring
- Docker框架的使用系列教程(四)容器的使用Docker框架
- Urllib庫的使用一---基本使用
- ECharts的使用Echarts
- DbVisualizer的使用
- Typeof的使用
- iview 的使用View
- Trait 的使用AI
- lombok的使用Lombok
- MybatisGenerator的使用MyBatis
- valueForKeyPath的使用
- ThreadLocal的使用thread
- elasticsearch的使用Elasticsearch
- CoreData的使用
- joomla的使用OOM
- sqlmap的使用SQL
- echars的使用
- SVG 的使用SVG
- FlowableAPI的使用API
- pycnblog的使用
- netcat的使用
- jextract的使用
- pinia的使用
- pip 的使用
- DBV 的使用
- Docker的使用Docker
- Promise的使用Promise
- SVN的使用
- EndNote的使用
- git的使用+Git
- git 的使用Git
- Bootstarp的使用boot
- GRPC的使用RPC
- Maven的使用Maven
- Scanner的使用
- @ModelAttribute 的使用
- mysql的使用MySql
- socket 的使用