Latest web development tutorials

C matrizes # dot (BitArray)

C # set C # set

classe BitArray gere uma matriz compacta de valores de bit, que usa um valor booleano, onde a verdadeira indica um bit está ligado (1), pouco falsa representação está desligado (0).

Quando você precisa para armazenar a pouco, mas eu não sei de antemão o número de bits, usando uma matriz de pontos. Você pode usarum índice inteiro para acessar a matriz do ponto de coleta, o índice do zero.

métodos de classe e propriedades BitArray

A tabela seguinte lista algumas das comumatributos de classe BitArray:

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

A tabela a seguir lista alguns dosmétodos mais comuns de classe BitArray:

序号方法名 & 描述
1public BitArray And( BitArray value );
对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位与操作。
2public bool Get( int index );
获取 BitArray 中指定位置的位的值。
3public BitArray Not();
把当前的 BitArray 中的位值反转,以便设置为 true 的元素变为 false,设置为 false 的元素变为 true。
4public BitArray Or( BitArray value );
对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位或操作。
5public void Set( int index, bool value );
把 BitArray 中指定位置的位设置为指定的值。
6public void SetAll( bool value );
把 BitArray 中的所有位设置为指定的值。
7public BitArray Xor( BitArray value );
对当前的 BitArray 中的元素和指定的 BitArray 中的相对应的元素执行按位异或操作。

Exemplos

O exemplo a seguir ilustra a matriz ponto (BitArray) use:

using System;
using System.Collections;

CollectionsApplication namespace
{
    Programa de classe
    {
        static void Main (string [] args)
        {
            // Criar duas matrizes de tamanho 8 pontos Ba1 BitArray = new BitArray (8);
            BitArray Ba2 = new BitArray (8);
            byte [] a = {60};
            byte [] b = {13};
            
            // O valor de 60 e 13 lojas uma matriz ponto Ba1 = new BitArray (a);
            Ba2 = new BitArray (b);

            // Conteúdo Ba1 de Console.WriteLine ( "Bit matriz Ba1: 60");
            for (int i = 0; i <ba1.Count; i ++)
            {
                Console.Write ( "{0, -6}", Ba1 [i]);
            }
            Console.WriteLine ();
            
            // Conteúdo Ba2 de Console.WriteLine ( "Bit matriz 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);

            // Conteúdo Ba3 de Console.WriteLine ( "Bit matriz Ba3 após a operação E: 12");
            for (int i = 0; i <ba3.Count; i ++)
            {
                Console.Write ( "{0, -6}", Ba3 [i]);
            }
            Console.WriteLine ();

            Ba3 = ba1.Or (Ba2);
            // Conteúdo Ba3 de Console.WriteLine ( "Bit matriz Ba3 após a operação OR: 61");
            for (int i = 0; i <ba3.Count; i ++)
            {
                Console.Write ( "{0, -6}", Ba3 [i]);
            }
            Console.WriteLine ();
            
            Console.ReadKey ();
        }
    }
}

Quando o código acima é compilado e executado, ele produz os seguintes resultados:

Bit matriz Ba1: 60 
Falso Falso Verdadeiro Verdadeiro Verdadeiro Verdadeiro Falso Falso 
Bit matriz Ba2: 13
Verdadeiro Falso Verdadeiro Verdadeiro Falso Falso Falso Falso 
Bit matriz Ba3 após a operação AND: 12
Falso Falso Verdadeiro Verdadeiro Falso Falso Falso Falso 
Bit Ba3 matriz após a operação OR: 61
Verdadeiro Falso Verdadeiro Verdadeiro Falso Falso Falso Falso 

C # set C # set