BitArray.Set 方法

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

**命名空间:**System.Collections
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
Public Sub Set ( _
    index As Integer, _
    value As Boolean _
)
用法
Dim instance As BitArray
Dim index As Integer
Dim value As Boolean

instance.Set(index, value)
public void Set (
    int index,
    bool value
)
public:
void Set (
    int index, 
    bool value
)
public void Set (
    int index, 
    boolean value
)
public function Set (
    index : int, 
    value : boolean
)

参数

  • index
    要设置的位的从零开始的索引。
  • value
    要分配给位的布尔值。

异常

异常类型 条件

ArgumentOutOfRangeException

index 小于零。

- 或 -

index 大于或等于 BitArray 中的元素数。

备注

此方法是 O(1) 操作。

示例

下面的代码示例演示如何设置或获取 BitArray 中的特定元素。

Imports System
Imports System.Collections
Imports Microsoft.VisualBasic

Public Class SamplesBitArray    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a BitArray.
        Dim myBA As New BitArray(5)
        
        ' Displays the properties and values of the BitArray.
        Console.WriteLine("myBA values:")
        PrintIndexAndValues(myBA)
        
        ' Sets all the elements to true.
        myBA.SetAll(True)
        
        ' Displays the properties and values of the BitArray.
        Console.WriteLine("After setting all elements to true,")
        PrintIndexAndValues(myBA)
        
        ' Sets the last index to false.
        myBA.Set(myBA.Count - 1, False)
        
        ' Displays the properties and values of the BitArray.
        Console.WriteLine("After setting the last element to false,")
        PrintIndexAndValues(myBA)
        
        ' Gets the value of the last two elements.
        Console.WriteLine("The last two elements are: ")
        Console.WriteLine("    at index {0} : {1}", _
           myBA.Count - 2, myBA.Get(myBA.Count - 2))
        Console.WriteLine("    at index {0} : {1}", _
           myBA.Count - 1, myBA.Get(myBA.Count - 1))
    End Sub 'Main

    Public Shared Sub PrintIndexAndValues(myCol As IEnumerable)
        Dim i As Integer
        Dim obj As Object
        i = 0
        For Each obj In  myCol
            Console.WriteLine("    [{0}]:    {1}", i, obj)
            i = i + 1
        Next obj
        Console.WriteLine()
    End Sub 'PrintValues

End Class

' This code produces the following output.
' 
' myBA values:
'     [0]:    False
'     [1]:    False
'     [2]:    False
'     [3]:    False
'     [4]:    False
' 
' After setting all elements to true,
'     [0]:    True
'     [1]:    True
'     [2]:    True
'     [3]:    True
'     [4]:    True
' 
' After setting the last element to false,
'     [0]:    True
'     [1]:    True
'     [2]:    True
'     [3]:    True
'     [4]:    False
' 
' The last two elements are:
'     at index 3 : True
'     at index 4 : False
using System;
using System.Collections;
public class SamplesBitArray  {

   public static void Main()  {

      // Creates and initializes a BitArray.
      BitArray myBA = new BitArray( 5 );

      // Displays the properties and values of the BitArray.
      Console.WriteLine( "myBA values:" );
      PrintIndexAndValues( myBA );

      // Sets all the elements to true.
      myBA.SetAll( true );

      // Displays the properties and values of the BitArray.
      Console.WriteLine( "After setting all elements to true," );
      PrintIndexAndValues( myBA );

      // Sets the last index to false.
      myBA.Set( myBA.Count - 1, false );

      // Displays the properties and values of the BitArray.
      Console.WriteLine( "After setting the last element to false," );
      PrintIndexAndValues( myBA );

      // Gets the value of the last two elements.
      Console.WriteLine( "The last two elements are: " );
      Console.WriteLine( "    at index {0} : {1}", myBA.Count - 2, myBA.Get( myBA.Count - 2 ) );
      Console.WriteLine( "    at index {0} : {1}", myBA.Count - 1, myBA.Get( myBA.Count - 1 ) );
   }


   public static void PrintIndexAndValues( IEnumerable myCol )  {
      int i = 0;
      foreach ( Object obj in myCol ) {
         Console.WriteLine( "    [{0}]:    {1}", i++, obj );
      }
      Console.WriteLine();
   }

}
/* 
This code produces the following output.

myBA values:
    [0]:    False
    [1]:    False
    [2]:    False
    [3]:    False
    [4]:    False

After setting all elements to true,
    [0]:    True
    [1]:    True
    [2]:    True
    [3]:    True
    [4]:    True

After setting the last element to false,
    [0]:    True
    [1]:    True
    [2]:    True
    [3]:    True
    [4]:    False

The last two elements are:
    at index 3 : True
    at index 4 : False

*/ 
using namespace System;
using namespace System::Collections;
void PrintIndexAndValues( IEnumerable^ myCol );
int main()
{
   
   // Creates and initializes a BitArray.
   BitArray^ myBA = gcnew BitArray( 5 );
   
   // Displays the properties and values of the BitArray.
   Console::WriteLine( "myBA values:" );
   PrintIndexAndValues( myBA );
   
   // Sets all the elements to true.
   myBA->SetAll( true );
   
   // Displays the properties and values of the BitArray.
   Console::WriteLine( "After setting all elements to true," );
   PrintIndexAndValues( myBA );
   
   // Sets the last index to false.
   myBA->Set( myBA->Count - 1, false );
   
   // Displays the properties and values of the BitArray.
   Console::WriteLine( "After setting the last element to false," );
   PrintIndexAndValues( myBA );
   
   // Gets the value of the last two elements.
   Console::WriteLine( "The last two elements are: " );
   Console::WriteLine( "    at index {0} : {1}", myBA->Count - 2, myBA->Get( myBA->Count - 2 ) );
   Console::WriteLine( "    at index {0} : {1}", myBA->Count - 1, myBA->Get( myBA->Count - 1 ) );
}

void PrintIndexAndValues( IEnumerable^ myCol )
{
   int i = 0;
   IEnumerator^ myEnum = myCol->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ obj = safe_cast<Object^>(myEnum->Current);
      Console::WriteLine( "    [{0}]:    {1}", i++, obj );
   }

   Console::WriteLine();
}

/* 
 This code produces the following output.
 
 myBA values:
     [0]:    False
     [1]:    False
     [2]:    False
     [3]:    False
     [4]:    False

 After setting all elements to true,
     [0]:    True
     [1]:    True
     [2]:    True
     [3]:    True
     [4]:    True

 After setting the last element to false,
     [0]:    True
     [1]:    True
     [2]:    True
     [3]:    True
     [4]:    False

 The last two elements are:
     at index 3 : True
     at index 4 : False

 */
import System.*;
import System.Collections.*;

public class SamplesBitArray
{
    public static void main(String[] args)
    {
        // Creates and initializes a BitArray.
        BitArray myBA = new BitArray(5);
        // Displays the properties and values of the BitArray.
        Console.WriteLine("myBA values:");
        PrintIndexAndValues(myBA);

        // Sets all the elements to true.
        myBA.SetAll(true);

        // Displays the properties and values of the BitArray.
        Console.WriteLine("After setting all elements to true,");
        PrintIndexAndValues(myBA);

        // Sets the last index to false.
        myBA.Set(myBA.get_Count() - 1, false);

        // Displays the properties and values of the BitArray.
        Console.WriteLine("After setting the last element to false,");
        PrintIndexAndValues(myBA);

        // Gets the value of the last two elements.
        Console.WriteLine("The last two elements are: ");
        Console.WriteLine("    at index {0} : {1}", 
            System.Convert.ToString(myBA.get_Count() - 2), 
            System.Convert.ToString(myBA.Get((myBA.get_Count() - 2))));
        Console.WriteLine("    at index {0} : {1}", 
            System.Convert.ToString(myBA.get_Count() - 1), 
            System.Convert.ToString(myBA.Get((myBA.get_Count() - 1))));
    } //main

    public static void PrintIndexAndValues(IEnumerable myCol)
    {
        int i = 0;
        IEnumerator objMyEnum = myCol.GetEnumerator();
        while (objMyEnum.MoveNext()) {
            Object obj = objMyEnum.get_Current();
            Console.WriteLine("    [{0}]:    {1}", (Int32)i++, obj);
        }
        Console.WriteLine();
    } //PrintIndexAndValues
} //SamplesBitArray 
/* 
 This code produces the following output.
 
 myBA values:
     [0]:    False
     [1]:    False
     [2]:    False
     [3]:    False
     [4]:    False

 After setting all elements to true,
     [0]:    True
     [1]:    True
     [2]:    True
     [3]:    True
     [4]:    True

 After setting the last element to false,
     [0]:    True
     [1]:    True
     [2]:    True
     [3]:    True
     [4]:    False

 The last two elements are:
     at index 3 : True
     at index 4 : False

 */

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

BitArray 类
BitArray 成员
System.Collections 命名空间