当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C# Collection用法及代码示例


Collection<T> 类提供通用集合的基类。这里T是集合中元素的类型。此类位于 System.Collections.ObjectModel 命名空间下。

特征:

  • 集合<T> 可以通过创建其构造类型之一的实例来立即使用类。
  • 集合<T> 类提供受保护的方法,可用于在添加和删除项目、清除集合或设置现有项目的值时自定义其行为。
  • 最多集合<T> 对象可以被修改。但是,使用只读属性初始化的 Collection 对象列表<T>对象不能被修改。
  • 可以使用整数索引来访问此集合中的元素。该集合中的索引是零基础.
  • 集合<T> 接受空值作为引用类型的有效值并允许重复元素。

Constructors

构造函数 说明
集合<T>() 初始化 Collection 的新实例<T> 类是空的。
集合<T>(列表<T>) 初始化 Collection 的新实例<T> 类作为指定列表的包装器。

例子:


// C# code to create a Collection 
using System; 
using System.Collections.Generic; 
using System.Collections.ObjectModel; 
  
class GFG { 
  
    // Driver code 
    public static void Main() 
    { 
        // Creating a collection of ints 
        Collection<int> myColl = new Collection<int>(); 
  
        // Adding elements in Collection myColl 
        myColl.Add(2); 
        myColl.Add(3); 
        myColl.Add(4); 
        myColl.Add(5); 
  
        // Displaying the elements in myColl 
        foreach(int i in myColl) 
        { 
            Console.WriteLine(i); 
        } 
    } 
} 

输出:

2
3
4
5

Properties

属性 说明
Count 获取 Collection< 中实际包含的元素数量T>。
Items 获取 IList<T> 集合的包装<T>。
项目[Int32] 获取或设置指定索引处的元素。

例子:


// C# Code to illustrate the  
// Properties of Collection class 
using System; 
using System.Collections.Generic; 
using System.Collections.ObjectModel; 
   
class GFG { 
   
    // Driver code 
    public static void Main() 
    { 
          
        // Creating a collection of strings 
        Collection<string> myColl = new Collection<string>(); 
   
        // Adding elements in Collection myColl 
        myColl.Add("A"); 
        myColl.Add("B"); 
        myColl.Add("C"); 
        myColl.Add("D"); 
        myColl.Add("E"); 
          
        // ------- Count Property ---------- 
          
        // To print the count of 
        // elements in Collection 
        Console.WriteLine("Count : " + myColl.Count); 
   
        // -------- Item[Int32] Property -------- 
          
        // Get the element at index 2 
        Console.WriteLine("Element at index 2 is : " + myColl[2]); 
   
        // Get the element at index 3 
        Console.WriteLine("Element at index 3 is : " + myColl[3]); 
    } 
} 

输出:

Count : 5
Element at index 2 is : C
Element at index 3 is : D

Methods

方法 说明
Add(T) 将一个对象添加到 Collection< 的末尾T>。
Clear() 从 Collection< 中删除所有元素T>。
ClearItems() 从 Collection< 中删除所有元素T>。
Contains(T) 确定元素是否在 Collection< 中T>。
复制到 (T[], Int32) 复制整个集合<T> 到兼容的一维数组,从目标数组的指定索引开始。
Equals(Object) 确定指定对象是否等于当前对象。
GetEnumerator() 返回一个遍历 Collection< 的枚举器T>。
GetHashCode() 用作默认的哈希函数。
GetType() 获取当前实例的类型。
IndexOf(T) 搜索指定对象并返回整个 Collection< 中第一次出现的从零开始的索引T>。
插入(Int32,T) 将一个元素插入到 Collection<T> 在指定的索引处。
插入项目(Int32,T) 将元素插入到集合中指定索引处。
MemberwiseClone() 创建当前对象的浅拷贝。
Remove(T) 从 Collection< 中删除第一次出现的特定对象T>。
删除 (Int32) 删除 Collection< 指定索引处的元素T>。
删除项目(Int32) 删除 Collection< 指定索引处的元素T>。
设置项目(Int32,T) 替换指定索引处的元素。
ToString() 返回表示当前对象的字符串。

例子:


// C# code to check if an 
// element is in the Collection 
using System; 
using System.Collections.Generic; 
using System.Collections.ObjectModel; 
  
class GFG { 
  
    // Driver code 
    public static void Main() 
    { 
        // Creating a collection of strings 
        Collection<string> myColl = new Collection<string>(); 
  
        myColl.Add("A"); 
        myColl.Add("B"); 
        myColl.Add("C"); 
        myColl.Add("D"); 
        myColl.Add("E"); 
  
        // Checking if an element is in the Collection 
        // The function returns "True" if the 
        // item is present in Collection 
        // else returns "False" 
        Console.WriteLine(myColl.Contains("A")); 
    } 
} 

输出:

True

示例 2:


// C# code to copy the entire Collection 
// to a compatible one-dimensional Array, 
// starting at the specified index of 
// the target array 
using System; 
using System.Collections.Generic; 
using System.Collections.ObjectModel; 
  
class GFG { 
  
    // Driver code 
    public static void Main() 
    { 
        // Creating a collection of strings 
        Collection<string> myColl = new Collection<string>(); 
  
        myColl.Add("A"); 
        myColl.Add("B"); 
        myColl.Add("C"); 
        myColl.Add("D"); 
        myColl.Add("E"); 
  
        // Creating a string array 
        string[] myArr = new string[myColl.Count]; 
  
        // Copying the entire Collection to a 
        // compatible one-dimensional Array, 
        // starting at the specified index 
        // of the target array 
        myColl.CopyTo(myArr, 0); 
  
        // Displaying the elements in myArr 
        foreach(string str in myArr) 
        { 
            Console.WriteLine(str); 
        } 
    } 
} 

输出:

A
B
C
D
E

参考:



相关用法


注:本文由纯净天空筛选整理自Sahil_Bansall大神的英文原创作品 C# | Collection Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。