[官方笔记]
将指定集合的元素添加到List的末尾
命名空间:System.Collections.Generic
程序集:mscorlib(在 mscorlib.dll 中)
public:void AddRange
(IEnumerable<T>^ collection)
collection :一个集合,其元素应被添加到List的末尾。集合自身不能为 空引用(在 Visual Basic 中为 Nothing),
但它可以包含为 空引用(在 Visual Basic 中为 Nothing) 的元素(如果类型T为引用类型)。
备注:List中会保留集合中元素的顺序。
如果新的Count(当前Count加上集合的大小)大于Capacity,则会通过自动重新分配内部数组增大List的容量以容纳新元素,并在添加新元素之前将现有元素复制到新数组中。
如果List可以在不增加Capacity的情况下容纳新元素,则此方法是 O(n) 运算,其中n是要添加的元素数。如果需要增加此容量以容纳新元素,则此方法变为 O(n+m) 运算,其中n是要添加的元素数,m是Count。
示例:
using System;using System.Collections.Generic;public class Example{public static void Main(){string[] input = { "Brachiosaurus", "Amargasaurus", "Mamenchisaurus" };List<string> dinosaurs = new List<string>(input);Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);Console.WriteLine();foreach( string dinosaur in dinosaurs ){Console.WriteLine(dinosaur);}Console.WriteLine("\nAddRange(dinosaurs)");dinosaurs.AddRange(dinosaurs);Console.WriteLine();foreach( string dinosaur in dinosaurs ){Console.WriteLine(dinosaur);}Console.WriteLine("\nRemoveRange(2, 2)");dinosaurs.RemoveRange(2, 2);Console.WriteLine();foreach( string dinosaur in dinosaurs ){Console.WriteLine(dinosaur);}input = new string[] { "Tyrannosaurus", "Deinonychus", "Velociraptor"};Console.WriteLine("\nInsertRange(3, input)");dinosaurs.InsertRange(3, input);Console.WriteLine();foreach( string dinosaur in dinosaurs ){Console.WriteLine(dinosaur);}Console.WriteLine("\noutput = dinosaurs.GetRange(2, 3).ToArray()");string[] output = dinosaurs.GetRange(2, 3).ToArray();Console.WriteLine();foreach( string dinosaur in output ){Console.WriteLine(dinosaur);}}}
如果觉得《【C#学习笔记】 List.AddRange 方法》对你有帮助,请点赞、收藏,并留下你的观点哦!