复制一个List<T>对象
2011-02-01 09:43
316 查看
对于值类型的List直接用以下方法就可以复制:
static class Extensions { public static IList<T> Clone<T>(this IList<T> listToClone) where T: ICloneable { return listToClone.Select(item => (T)item.Clone()).ToList(); } }
当然前题是List中的对象要实现ICloneable接口
另一个更保险的方法是:
public static T Clone<T>(T RealObject)
{
using (Stream objectStream = new MemoryStream())
{
IFormatter formatter = new BinaryFormatter();
formatter.Serialize(objectStream, RealObject);
objectStream.Seek(0, SeekOrigin.Begin);
return (T)formatter.Deserialize(objectStream);
}
}
相关文章推荐
- ArrayList<Integer> list = new ArrayList<Integer>(); 在这个泛型为Integer的ArrayList中存放一个String类型的对象。
- 将List<Map<String,String>型的数据,变成一个JSON对象。
- 对一个List<B>类型的对象进行排序
- 【C#】List<T>对象的深复制
- 比较一个对象list中的id值和List<Integer>的值是否相等
- hibernate如何返回一个Map对象 以及List<Map<String, Object>>
- 将一个字符串对象数组转化为List<对象>
- 把一个List<T>的数据复制至另一个List<T>
- scala调用java的方法,返回了一个对象链表List<Student>,在scala中遍历该链表获取指定Student的名字name
- fastJson如何序列化一个包含list对象的Map对象,如Map<String,List<T>>类型的对象
- ArrayList<Integer> list = new ArrayList<Integer>();在这个泛型为 Integer 的 ArrayList 中存放一个 String 类型的对象。
- 利用反射实现mysql数据库sql查询 返回List<E>泛型(持久化)对象
- 17开年第一篇Activity之间传递List<T> 以及T对象类型数据的方法
- java Excel导入、自适应版本、将Excel转成List<map>对象
- 使用第三方工具,将JavaBean对象或者List<JavaBean/String/Integer>或Set或Map对象转成JSON
- Hadoop备忘:Reduce阶段Iterable<VALUEIN> values中的每个值都共享一个对象
- List<T>去除重复对象
- 随机获取一个集合(List, Set,Map)中的元素<转>
- C#List<>能按照List中的对象某个属性排序
- jdk8-获取list<Object>中的某个属性并过滤非空,然后返回一个属性的list