Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# list 复制

作者:资本principal   发布日期:2025-05-21   浏览:102

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // 创建一个包含一些整数的列表
        List<int> originalList = new List<int> { 1, 2, 3, 4, 5 };

        // 方法1: 使用 Clone 方法进行浅复制
        List<int> shallowCopyList = (List<int>)originalList.Clone();

        // 方法2: 使用 AddRange 方法进行复制
        List<int> copyListUsingAddRange = new List<int>();
        copyListUsingAddRange.AddRange(originalList);

        // 方法3: 使用构造函数进行复制
        List<int> copyListUsingConstructor = new List<int>(originalList);

        // 输出原始列表和复制后的列表,以验证它们是否相同
        Console.WriteLine("Original List: " + String.Join(", ", originalList));
        Console.WriteLine("Shallow Copy List: " + String.Join(", ", shallowCopyList));
        Console.WriteLine("Copy List Using AddRange: " + String.Join(", ", copyListUsingAddRange));
        Console.WriteLine("Copy List Using Constructor: " + String.Join(", ", copyListUsingConstructor));
    }
}

解释说明:

  1. Clone 方法Clone() 方法创建了一个浅复制(shallow copy),即它只复制了引用类型对象的引用,而不是实际的对象。对于值类型(如 int),这实际上是一个深复制。
  2. AddRange 方法AddRange() 方法将一个集合的所有元素添加到另一个集合中。这种方式也实现了列表的复制。
  3. 构造函数:使用 List<T> 的构造函数并传递一个现有列表,可以创建一个新的列表副本。

以上三种方法都可以用来复制 List<T>,选择哪种方法取决于具体的需求和上下文。

上一篇:c#向下取整

下一篇:c# serializable

大家都在看

c# 二进制

c# tcp client

c# type.gettype

c# sqlconnection

.net和c#

c#游戏开发

c#网络编程

c# rectangle

c# if else

c# rtsp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站