ArrayList 和 List<T>用法
来源:互联网 发布:java 获取法定节假日 编辑:程序博客网 时间:2024/06/02 17:09
ArrayList 类
不保证会对 ArrayList 排序。 在执行需要对ArrayList 排序的操作(如 BinarySearch)之前,必须对 ArrayList 进行排序。
ArrayList 的容量是ArrayList 可以保存的元素数。随着向 ArrayList 中添加元素,容量通过重新分配按需自动增加。可通过调用 TrimToSize 或通过显式设置 Capacity 属性减少容量。
使用整数索引可以访问此集合中的元素。 此集合中的索引从零开始。
ArrayList 接受nullNothingnullptrnull 引用(在 Visual Basic 中为Nothing) 作为有效值并且允许重复的元素。
示例:using System;using System.Collections;public class SamplesArrayList { public static void Main() { // Creates and initializes a new ArrayList. ArrayList myAL = new ArrayList(); myAL.Add("Hello"); myAL.Add("World"); myAL.Add("!"); // Displays the properties and values of the ArrayList. Console.WriteLine( "myAL" ); Console.WriteLine( " Count: {0}", myAL.Count ); Console.WriteLine( " Capacity: {0}", myAL.Capacity ); Console.Write( " Values:" ); PrintValues( myAL ); } public static void PrintValues( IEnumerable myList ) { foreach ( Object obj in myList ) Console.Write( " {0}", obj ); Console.WriteLine(); }}/* This code produces output similar to the following:myAL Count: 3 Capacity: f Values: Hello World !*/
List<(Of<(T>)>) 泛型类
表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。T 列表中元素的类型。
List<(Of<(T>)>) 类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList<(Of<(T>)>) 泛型接口。
List<(Of<(T>)>) 类既使用相等比较器又使用排序比较器。
诸如 Contains、IndexOf、LastIndexOf 和 Remove 这样的方法对列表元素使用相等比较器。类型 T 的默认相等比较器按如下方式确定。如果类型 T 实现 IEquatable<(Of<(T>)>) 泛型接口,则相等比较器为该接口的 Equals(T) 方法;否则,默认相等比较器为 Object..::.Equals(Object)。
诸如 BinarySearch 和 Sort 这样的方法对列表元素使用排序比较器。类型 T 的默认比较器按如下方式确定。 如果类型T 实现 IComparable<(Of<(T>)>) 泛型接口,则默认比较器为该接口的 CompareTo(T) 方法;否则,如果类型T 实现非泛型 IComparable 接口,则默认比较器为该接口的 CompareTo(Object) 方法。如果类型T 没有实现其中任一个接口,则不存在默认比较器,并且必须显式提供比较器或比较委托。
List<(Of<(T>)>) 不保证是排序的。 在执行要求List<(Of<(T>)>) 已排序的操作(例如 BinarySearch)之前,您必须对List<(Of<(T>)>) 进行排序。
可使用一个整数索引访问此集合中的元素。 此集合中的索引从零开始。
List<(Of<(T>)>) 接受nullNothingnullptrnull 引用(在 Visual Basic 中为Nothing) 作为引用类型的有效值并且允许有重复的元素。
示例:
static void Main(string[] args) { List<Salary> companySalary = new List<Salary>()//同时对List初始化 { new Salary() { Name = "Mike", BaseSalary = 3000, Bonus = 1000 }, new Salary() { Name = "Rose", BaseSalary = 2000, Bonus = 4000 }, new Salary() { Name = "Jeffry", BaseSalary = 1000, Bonus = 6000 }, new Salary() { Name = "Steve", BaseSalary = 4000, Bonus = 3000 } }; companySalary.Sort(new BonusComparer()); //提供一个非默认的比较器 foreach (Salary item in companySalary) { Console.WriteLine(string.Format("Name:{0} \tBaseSalary:{1} \tBonus:{2}", item.Name, item.BaseSalary, item.Bonus)); } Console.ReadKey(); }
- ArrayList 和 List<T>用法
- ArrayList和List<T>
- 关于List<T>和ArrayList<T>执行效率问题
- C#编程之IList<T>、List<T>和ArrayList
- Android -List<T>和ArrayList<T>(),发现你的真身
- 数组,list<T>,arraylist
- C# 集合( Stack和Queue 、Dictionary、 ArrayList和List<T> )
- ArrayList的使用和List<T>的比较
- C#ArrayList 集合 和list<t>泛型集合
- C# 数组、ArrayList和List<T>的区别
- 数组、ArrayList、List<T>区别和选择
- <T> List<T>的用法
- Set,List,Map,Vector,ArrayList的区别和用法
- C# List<T>用法
- List<T>用法
- C# List<T>用法
- C# List<T>用法
- C# List<T>用法
- 计算机网络笔记---网络层---ICMP
- [Java 12 IO] OutputStream 字节输出流,继承自它的类,都是 程序中输出 数据
- 外键 外键表、主键表 数据库
- JAVA判断浏览器类型-基本操作
- Java高质量代码之 — 泛型与反射
- ArrayList 和 List<T>用法
- 大数据高考押题背后看数据时代变迁
- 管理员增删改
- Einer der Anwärter Swtor Credits kaufen
- Windows SOCKET编程 1
- 第七周算法概论作业—背包问题
- 交往了几年的男朋友,
- error while loading shared libraries: xxx.so.x"错误的原因和解决办法
- android自动化测试之MonkeyRunner使用实例(二)