zoukankan      html  css  js  c++  java
  • C# 集合

    参考资料: https://www.cnblogs.com/kissdodog/archive/2013/01/29/2882195.html

         https://www.cnblogs.com/maj99/p/6322626.html

    IEnumerable:所有集合都要继承IEnumerable。IEnumerable接口只要一个方法GetEnumerator 。返回值是IEnumerator类型,继承它可以就可以使用枚举器foreach

    IEnumerator : 支持在集合上进行简单的迭代

    ICollection:定义集合的大小(count)、枚举器(foreach)、同步方法(copyto)继承

    ICloneable: 只有一个Clone()方法

    ArrayList : 类似数组的集合,容量是固定的,默认初始容量为0,可使用add添加,不对其子集进行约束,可以添加任意类型数据。继承于:IEnumerable, IList, ICollection, ICloneable

     1             ArrayList arraylist = new ArrayList();
     2             int num = arraylist.Count;//0
     3             arraylist.Add(new Cl());
     4             arraylist.Add("ddd");
     5             arraylist.Add(55555);
     6 
     7             num = arraylist.Count;//3
     8 
     9             arraylist = new ArrayList(5);
    10             num = arraylist.Count;//0

    HashTable:提供HashTable的集合类型(别称哈希表或者字典)。以键值对存储数据。键值都是object类型

           属性:keys、values、count

           方法:Add(object key,object value)、Remove()、clear()

           与ArrayList的区别:HashTable可以使用键来查找对象

    List<T>:泛型集合。类型参数T。通过类型参数T约束参数。可以最大限度重用并保证类型安全(减少了强制装箱的风险)、提高性能

           与ArrayList的区别:增加了类型约束(ArrayList可以添加任意类型),添加时不需要进行装箱拆箱

    Dictionary<K,V>:泛型字典。跟HashTable类型,就是增加的类型约束(HashTable是可以添加任意类型)Dictionary<K,V>添加、读取值类型元素无需拆箱、装箱,而HashTable需要做拆箱、装箱处理。

        定义语法:Dictionary<K,V>对象名 = new Dictionary<K,V>

  • 相关阅读:
    Linux 常用命令-01
    神经网络工具箱torch.nn -05
    Autograd与计算图-04
    Tensor的索引与变形-03
    Tensor数据类型-00
    Tensor的创建与维度查看-01
    转载:网友对rootfs的理解
    【转载】linux启动流程分析
    windows7 自带计算器bug
    网上同仁对linux文件系统的剖析
  • 原文地址:https://www.cnblogs.com/net-god/p/9855096.html
Copyright © 2011-2022 走看看