Alm*_*lmo 9 .net list sortedlist
我正在使用.net 3.5,我有这个:
SortedList<int, BrainTickTransition>
Run Code Online (Sandbox Code Playgroud)
我想要其中一个:
List<BrainTickTransition>
Run Code Online (Sandbox Code Playgroud)
有没有一个快速的方法来执行此操作而无需复制SortedList中的所有值?
Cod*_*aos 16
需要复制值,因为无法在a List<TValue>和a 之间共享内存SortedList<TKey,TValue>.
我假设您想要List<TValue>包含值而不关心键,您可以使用:
sortedList.Values.ToList();
Run Code Online (Sandbox Code Playgroud)
但是如果你只需要一个IList<TValue>(而不是具体类List<TValue>),你可以直接使用该Values属性,从而避免创建副本.
当然,当原始集合被修改时,这些解决方案的语义不同.List<TValue>副本不会反映更改,而属性IList<TValue>引用的副本将反映Values更改,即使您将其分配给另一个变量也是如此.
| 归档时间: |
|
| 查看次数: |
5673 次 |
| 最近记录: |