首页 / 知识
用C#将值和键从一个字典复制到另一个字典中的最快方法是什么?
2023-04-16 11:42:00

What's the fastest way to copy the values and keys from one dictionary into another in C#?似乎没有dictionary.AddRange()方法。 有谁知道一种更好的方式而不使用foreach循环将项目复制到另一本词典。 我正在使用System.Collections.Generic.Dictionary。 这是用于.NET 2.0。
您必须将其强制转换为 for / foreach循环没有错。假设的方法AddRange都是这样。 我唯一需要担心的是内存分配行为,因为添加大量条目可能会导致多个重新分配和重新哈希。无法通过给定数量增加现有词典的容量。您最好为两个当前词典分配足够的容量来分配一个新的Dictionary,但是您仍然需要循环才能加载至少其中一个。
可以将现有的动物词典传递给构造函数。
为了好玩,我创建了这个扩展方法到字典。这应该尽可能进行深层复制。
我不明白,为什么不使用Dictionary(Dictionary)(如ageektrapped所建议)。 您要执行浅拷贝还是深拷贝? (也就是说,两个Dictionary是否都指向新字典中每个对象的相同引用或新副本?) 如果要创建一个指向新对象的新Dictionary,我认为唯一的方法是通过foreach。 如果要处理两个现有对象,则使用CopyTo方法可能会有所帮助:http://msdn.microsoft.com/zh-cn/library/cc645053.aspx 使用其他集合(接收者)的Add方法吸收它们。 |
最新内容
相关内容
linux复制几行命令行?
linux复制几行命令行?,系统,位置,基本知识,设备,软件,文件,命令,源文件,连续,目录,linux使用命令行将一个文件的某一行复制到另一个文件中上述linux复制当前命令行?
linux复制当前命令行?,系统,工作,命令,地址,文件,目录,基本知识,信息,源文件,路径,Linux复制命令什么操作1、在Linux中,用于复制文件和目录的命linux中怎样复制命令?
linux中怎样复制命令?,系统,文件,命令,源文件,目录,密码,基本知识,电脑,目标,文件夹,Linux文件拷贝命令?1、linux系统使用cp命令即可将一个文linux文件复制的命令?
linux文件复制的命令?,系统,文件,命令,目录,源文件,基本知识,位置,目标,选项,文件夹,在Linux中,要将指定源文件复制到目标文件,但不覆盖原有文linux复制命令文件?
linux复制命令文件?,系统,文件,命令,目录,基本知识,源文件,目标,文件夹,路径,选项,linux怎么复制命令cp命令:用于复制文件或目录。语法如下:`baslinux复制一个命令?
linux复制一个命令?,系统,文件,命令,目录,源文件,密码,电脑,基本知识,位置,首次,Linux文件拷贝命令?linux系统使用cp命令即可将一个文件夹里面夸虚机linux复制命令?
夸虚机linux复制命令?,系统,工具,项目,电脑,位置,文件,命令,基本知识,源文件,虚拟机,如何实现虚拟机linux和主机之间文本的复制和粘贴相关推荐linux常用命令字典?
linux常用命令字典?,状态,代码,环境,信息,项目,发行,标准,电脑,基础,文件,linux:命令行中对文件进行编辑后怎么退出到命令行界面1、如果在命令linux命令行如何复制?
linux命令行如何复制?,位置,系统,文件,命令,目录,工作,源文件,目标,文件名,终端,linux下怎样复制文件并且重命名文件?.命令格式:mv [选项] 源文linux剪切复制命令是?
linux剪切复制命令是?,位置,工作,系统,地址,环境,信息,名称,标准,命令,目录,linux中的复制粘贴快捷键1、复制命令:Ctrl + Insert 组合键或用鼠linux中复制剪切命令?
linux中复制剪切命令?,位置,文件,系统,电脑,密码,命令,目录,源文件,目标,路径,linux如何复制移动文件如果目标文件是到某一目录文件的路径,源文linux复制命令案列?
linux复制命令案列?,系统,文件,命令,目录,源文件,文件夹,路径,目标,里面,表示,linux复制命令在Linux中,用于复制文件和目录的命令是cp。cp命令