最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#復(fù)制數(shù)組的兩種方式及效率比較

 更新時(shí)間:2022年10月22日 15:03:28   作者:Darren?Ji  
這篇文章介紹了C#復(fù)制數(shù)組的兩種方式及效率比較,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

如何高效地進(jìn)行數(shù)組復(fù)制?

如果把一個(gè)變量值復(fù)制給另外一個(gè)數(shù)組變量,那么2個(gè)變量指向托管堆上同一個(gè)引用。

如果想在托管堆上創(chuàng)建另外的一份數(shù)組實(shí)例,通常使用Array.Copy方法。

class Program
{
    static void Main(string[] args)
    {
        int[] a = {1, 3, 6};
        int[] b =new int[a.Length];
        Array.Copy(a,0,b,0,a.Length);
        
        MyArrCopy myArrCopy = new MyArrCopy();
        myArrCopy.Display(a);
        Console.ReadKey();
    }
}
        
public class MyArrCopy
{
    public void Display(int[] arr)
    {
        for (int i = 0; i < arr.Length; i++)
        {
            if (i != 0)
            {
                Console.Write(",");
            }
            Console.Write(arr[i]);
        }
    }
}

在數(shù)據(jù)量大的情況下,使用Buffer.BlockCopy方法將會(huì)擁有更高的復(fù)制效率。

分別測(cè)試使用Buffer.BlockCopy和Array.Copy的區(qū)別。

public class CopyTest
{
    private int[] _myArr;//數(shù)組源
    private int[] _blockArr=new int[10000];//使用 Buffer.BlockCopy的目標(biāo)數(shù)組
    private int[] _copyArr=new int[10000];//使用Array.Copy的目標(biāo)數(shù)組
    
    public CopyTest(int[] myArr)
    {
        _myArr = myArr;
    }
    
    public void TestBlockCopy()
    {
        Stopwatch sw = new Stopwatch();
        sw.Start();
        Buffer.BlockCopy(_myArr, 0,_blockArr,0,_myArr.Length);
        sw.Stop();
        Console.WriteLine("使用Buffer.BlockCopy方法:" + sw.ElapsedTicks);
    }
    
    public void TestNormalCopy()
    {
        Stopwatch sw = new Stopwatch();
        sw.Start();
        Array.Copy(_myArr, 0, _copyArr,0, _myArr.Length);
        sw.Start();
        Console.WriteLine("使用Array.Copy方法:" + sw.ElapsedTicks);
    }
}

客戶(hù)端。

int[] a = new int[10000];
for (int i = 0; i < 10000; i++)
{
    a[i] = i;
}

var copyTest = new CopyTest(a);
copyTest.TestBlockCopy();
copyTest.TestNormalCopy();

Console.ReadKey();

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • C#正則表達(dá)式轉(zhuǎn)義字符介紹

    C#正則表達(dá)式轉(zhuǎn)義字符介紹

    正則表達(dá)式,又稱(chēng)正規(guī)表示法、常規(guī)表示法。這篇文章主要介紹了C#正則表達(dá)式轉(zhuǎn)義字符介紹的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • C#生成word記錄實(shí)例解析

    C#生成word記錄實(shí)例解析

    這篇文章主要介紹了C#生成word記錄實(shí)例解析,很實(shí)用的功能,需要的朋友可以參考下
    2014-08-08
  • .net使用Aspose.Words進(jìn)行Word替換操作的實(shí)現(xiàn)代碼

    .net使用Aspose.Words進(jìn)行Word替換操作的實(shí)現(xiàn)代碼

    之前在工作中,需要實(shí)現(xiàn)Word打印功能,并且插入圖片。當(dāng)時(shí)采取的方式則是使用書(shū)簽進(jìn)行操作。首先在word內(nèi)插入書(shū)簽,完成后,存為模板。程序加載該模板,找到書(shū)簽,并在指定位置寫(xiě)入文字即可
    2013-05-05
  • C#?Razor語(yǔ)法規(guī)則

    C#?Razor語(yǔ)法規(guī)則

    這篇文章介紹了C#?Razor的語(yǔ)法規(guī)則,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • 5分鐘用C#實(shí)現(xiàn)串口助手

    5分鐘用C#實(shí)現(xiàn)串口助手

    本文主要介紹了C#實(shí)現(xiàn)串口助手,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • C#對(duì)WPF數(shù)據(jù)綁定的菜單插入Seperator分隔

    C#對(duì)WPF數(shù)據(jù)綁定的菜單插入Seperator分隔

    這篇文章介紹了C#對(duì)WPF數(shù)據(jù)綁定的菜單插入Seperator分隔的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Unity實(shí)現(xiàn)鼠標(biāo)雙擊與長(zhǎng)按的檢測(cè)

    Unity實(shí)現(xiàn)鼠標(biāo)雙擊與長(zhǎng)按的檢測(cè)

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)鼠標(biāo)雙擊與長(zhǎng)按的檢測(cè),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C#使用反射和LINQ查詢(xún)程序集的元數(shù)據(jù)

    C#使用反射和LINQ查詢(xún)程序集的元數(shù)據(jù)

    在?C#?中,反射是一個(gè)強(qiáng)大的工具,它允許我們?cè)谶\(yùn)行時(shí)檢查程序集、類(lèi)型、方法等的元數(shù)據(jù),結(jié)合?LINQ,我們可以用更簡(jiǎn)潔和表達(dá)力強(qiáng)的方式處理這些信息,本文將詳細(xì)講解如何使用反射與?LINQ?查詢(xún)程序集的元數(shù)據(jù),需要的朋友可以參考下
    2024-08-08
  • C#網(wǎng)絡(luò)爬蟲(chóng)代碼分享 C#簡(jiǎn)單的爬取工具

    C#網(wǎng)絡(luò)爬蟲(chóng)代碼分享 C#簡(jiǎn)單的爬取工具

    這篇文章主要為大家詳細(xì)介紹了C#網(wǎng)絡(luò)爬蟲(chóng)代碼,教大家如何制作了簡(jiǎn)單的爬取工具,感興趣的小伙伴們可以參考一下
    2016-07-07
  • C#多線程系列之原子操作

    C#多線程系列之原子操作

    本文詳細(xì)講解了C#多線程的原子操作,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02

最新評(píng)論

六枝特区| 卢龙县| 大同县| 扎赉特旗| 闵行区| 玉山县| 康乐县| 德令哈市| 固始县| 柳林县| 平远县| 宁津县| 天气| 寿宁县| 县级市| 镇雄县| 龙州县| 万宁市| 长武县| 康平县| 营山县| 乌兰县| 南涧| 辉南县| 丽水市| 奉新县| 冀州市| 阿拉尔市| 屯留县| 佛教| 苗栗市| 施甸县| 大名县| 海宁市| 新源县| 彝良县| 新野县| 钟山县| 东安县| 固安县| 米林县|