Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

การคัดลอกข้อมูล BitArray ไปยังอาร์เรย์ใน C#

ภาพรวม

BitArray.CopyTo(Array array, int index) คัดลอกค่า bit ไปยังอาร์เรย์ bool[] หรือ Array ที่เข้ากันได้ เริ่มที่ดัชนีที่ระบุ

ตัวอย่างที่ 1: คัดลอก BitArray ขนาด 2 ไป bool[] ขนาด 2 เริ่มดัชนี 0

using System;
using System.Collections;

public class Demo
{
    public static void Main()
    {
        BitArray arr = new BitArray(2);
        arr[0] = false;
        arr[1] = true;

        Console.WriteLine("Elements in BitArray...");
        foreach (bool res in arr)
        {
            Console.WriteLine(res);
        }

        bool[] boolArr = new bool[2];
        boolArr[0] = true;
        boolArr[1] = false;

        arr.CopyTo(boolArr, 0);

        Console.WriteLine("\nArray...");
        foreach (Object obj in boolArr)
        {
            Console.WriteLine(obj);
        }
    }
}

ผลลัพธ์

Elements in BitArray...
False
True
Array...
False
True

ตัวอย่างที่ 2: คัดลอก BitArray ขนาด 5 ไป bool[] ขนาด 10 เริ่มดัชนี 0

using System;
using System.Collections;

public class Demo
{
    public static void Main()
    {
        BitArray arr = new BitArray(5);
        arr[0] = false;
        arr[1] = true;
        arr[2] = false;
        arr[3] = true;
        arr[4] = true;

        Console.WriteLine("Elements in BitArray...");
        foreach (bool res in arr)
        {
            Console.WriteLine(res);
        }

        bool[] boolArr = new bool[10];
        boolArr[0] = true;
        boolArr[1] = false;

        arr.CopyTo(boolArr, 0);

        Console.WriteLine("\nArray...");
        foreach (Object obj in boolArr)
        {
            Console.WriteLine(obj);
        }
    }
}

ผลลัพธ์

Elements in BitArray...
False
True
False
True
True
Array...
False
True
False
True
True
False
False
False
False
False

สรุป

  • อาร์เรย์ปลายทางควรเป็น bool[] หรือ Array ที่เข้ากันได้
  • ขนาดอาร์เรย์ต้อง >= จำนวน bit + ดัชนีเริ่มต้น
  • ค่าที่ไม่ถูกคัดลอกจะคงค่าเดิม (ตัวอย่างที่ 2 ช่อง 1 คงค่า false เดิม)