【C#学习笔记】 List.AddRange 方法
2024-10-21 13:14:17
[官方笔记]
将指定集合的元素添加到 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(, ); Console.WriteLine();
foreach( string dinosaur in dinosaurs )
{
Console.WriteLine(dinosaur);
} input = new string[] { "Tyrannosaurus",
"Deinonychus",
"Velociraptor"}; Console.WriteLine("\nInsertRange(3, input)");
dinosaurs.InsertRange(, input); Console.WriteLine();
foreach( string dinosaur in dinosaurs )
{
Console.WriteLine(dinosaur);
} Console.WriteLine("\noutput = dinosaurs.GetRange(2, 3).ToArray()");
string[] output = dinosaurs.GetRange(, ).ToArray(); Console.WriteLine();
foreach( string dinosaur in output )
{
Console.WriteLine(dinosaur);
}
}
}
最新文章
- 查看SQLserver编码格式的SQL语句
- Topcoder SRM558 1000 SurroundingGame
- U盘又中毒了,隐藏文件如何显示
- Registry values for ProductID and LocaleID for AutoCAD and the vertical products
- CSS 居中方法集锦
- matlab查找回车字符
- 1像素HR技巧(兼容各浏览器)
- java.sql.SQLException:指定了无效的 Oracle URL
- hibernate的orphanRemoval
- Oracle12c:创建主分区、子分区,实现自动分区插入效果
- Linux 配置vim编辑器
- linux系统命令大全
- linux系统中的文件权限详解(转)
- CSS3 之转动的风车
- SimpleDateFormat 使用时出现的线程同步问题。。。
- spring框架学习(四)AOP思想
- 使用 Swagger 文档化和定义 RESTful API
- Py2exe——将python程序变成windows下可执行的exe
- 初识android界面布局
- php 二位数组排序