非泛型集合的类和接口位于System.Collections命名空间
如:列表、队列、位数组、哈希表和字典的集合
 
 
ArrayList 动态数组
可被单独索引的对象的有序集合
可以使用索引在指定的位置添加和移除项目,动态数组会自动重新调整它的大小
允许在列表中进行动态内存分配、增加、搜索、排序
 
Capacity:获取或设置可以包含的元素个数
Count:包含的元素个数
Item:获取或设置置顶索引处的元素
Add:末尾添加一个对象
Clear:移除所有的元素
Contains:判断元素是否在ArrayList中
GetRange(int index, int count):获取数组中的部分元素,返回的是ArrayList
Insert(int index, object value): 在指定索引处插入值
Remove:移除一个元素
RemoveAt(int index):移除指定索引处的元素
Reverse:将元素的顺序反转
Sort: 对Arraylist元素进行排序
 
 
Hashtable 哈希表
使用键来访问集合中的元素
哈希表中的每一项都有一个键/值对
 
Count:获取键值对个数
Item:获取或设置某键的值
Add:添加一直键值对
Clear:移除所有的元素
ContainsKey:是否包含某键
Remove:移除某键
 
 
SortedList 排序列表
使用键和索引来访问列表中的项
排序列表是数组和哈希表的组合
使用索引访问各项,则它是一个动态数组
使用键访问各项,则它是一个哈希表
 
Capacity:获取或设置sortedlist的容量
Count:获取元素个数
Add(object key, object value):添加一个元素
clear:移除所有元素
ContainsValue( object value):SortedList 是否包含指定的值
GetByIndex:获取指定索引出处的值
GetKey:获取指定索引处的键
GetKeyList:获取SortedList 中的键
GetValueList:获取 SortedList 中的值
Remove:移除指定索引处的元素
 
Stack 堆栈
后进先出
在列表中添加一项,称为推入元素
从列表中移除一项时,称为弹出元素
 
Count:获取元素个数
Clear:移除所有元素
Contains:是否包含某个元素
Peek:返回在stack的顶部的对象,但不移除
Pop:移除并返回到stack的顶部对象
Push:顶部添加一个对象
 
 
Queue 队列
先进先出
在列表中添加一项,称为入队
从列表中移除一项,称为出队
 
Count:获取元素个数
Clear:移除所有元素
Contains:是否包含某个元素
Dequeue:移除并返回到stack的顶部对象
Enqueue:末尾添加一个对象
 
实例
 using System;
using System.Collections; //<summary>
//以stack 堆栈为例
//</summary>
namespace CollectionStack
{
class program
{
static void Main(string[] args)
{
Stack st = new Stack(); // Push:顶部添加对象
st.Push("!");
st.Push("WORLD");
st.Push("HELLO"); Console.Write("push后元素为:");
foreach (string item in st)
{
Console.Write(item + " ");
}
Console.WriteLine(); // Contains:是否包含某个元素
Console.WriteLine("st中包含WORLD:" + st.Contains("WORLD"));
Console.WriteLine("st中包含dear:" + st.Contains("dear")); // Pop:移除并返回到stack的顶部对象
st.Pop();
Console.Write("pop移除后元素为:");
foreach (string item in st)
{
Console.Write(item + " ");
}
Console.WriteLine();
Console.ReadKey(); }
}
}

结果

 
 

C#-非泛型集合的方法的更多相关文章

  1. Linq操作非泛型集合

    我们都知道,Linq能查询泛型集合,确切的说是:LINQ能实现查询泛型对象或者实现了IEnumerable.但是,很遗憾的是诸如ArrayList这样的非泛型集合并没有实现IEnumerable.那咋 ...

  2. C#非泛型集合和泛型集合的超级详解

    C# 泛型集合之非泛型集合类与泛型集合类的对应: ArrayList对应List HashTable对应Dictionary Queue对应Queue Stack对应Stack SortedList对 ...

  3. LINQ学习系列-----3.1 查询非泛型集合

    一.问题起源 LINQ to object在设计时,是配合IEnumerable<T>接口的泛型集合类型使用的,例如字典.数组.List<T>等,但是对于继承了IEnumera ...

  4. 笔记:Struts2 Action 非泛型集合元素类型转换

    局部类型转换文件 局部类型转换文件的文件名应为 ActionName-conversion.properties,其中 ActionName 是需要替换为 Action 的类名称,后面的 conver ...

  5. 编写高质量代码改善C#程序的157个建议——建议20:使用泛型集合代替非泛型集合

    建议20:使用泛型集合代替非泛型集合 在建议1中我们知道,如果要让代码高效运行,应该尽量避免装箱和拆箱,以及尽量减少转型.很遗憾,在微软提供给我们的第一代集合类型中没有做到这一点,下面我们看Array ...

  6. C#非泛型集合和泛型集合

    第一  : ArrayList(非泛型集合)  与List(泛型集合) ArrayList 是数组的复杂版本.ArrayList 类提供在大多数 Collections 类中提供但不在 Array(数 ...

  7. LINQ学习系列-----3.1 查询非泛型集合和多个分组

    一.查询非泛型集合 1.问题起源 LINQ to object在设计时,是配合IEnumerable<T>接口的泛型集合类型使用的,例如字典.数组.List<T>等,但是对于继 ...

  8. 浅谈:C#中的非泛型集合

    1.首先:ArrayList:非泛型集合 List:泛型集合 集合跟数组比较我们更容易理解.数组:1,长度固定2,数据类型预先声明 集合:1,长度可变2,数据类型预先声明的为泛型集合,数据类型不限定为 ...

  9. Linq查询非泛型集合要指定Student类型(比如List)

    #region Linq to 集合查询非泛型集合要指定Student类型            //ArrayList list = new ArrayList();            //li ...

随机推荐

  1. java--String equals方法

    本文版权归 远方的风lyh和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. public boolean equals(Object anObject) { //1.先和自身比较对 ...

  2. socket的阻塞与非阻塞,同步与异步

    同步/异步主要针对C端: 同步:      所谓同步,就是在c端发出一个功能调用时,在没有得到结果之前,该调用就不返回.也就是必须一件一件事做,等前一件做完了才能做下一件事. 例如普通B/S模式(同步 ...

  3. casbin的分析

    casbin的分析 问题 一般的项目中,都会有权限认证模块,用来控制不同的角色,可以访问的功能.比较出名的权限控制模型有ACL和RABC.如果每个项目中,都重新实现权限控制模块,这样操作会比较繁琐,希 ...

  4. spring学习(二) ———— AOP之AspectJ框架的使用

    前面讲解了spring的特性之一,IOC(控制反转),因为有了IOC,所以我们都不需要自己new对象了,想要什么,spring就给什么.而今天要学习spring的第二个重点,AOP.一篇讲解不完,所以 ...

  5. 【转载】Window服务器开机后一直处于蓝色屏幕(非蓝屏 crash)状态

    阿里云Windows系统服务器运维的过程中,有时候会遇到实例开机后一直处于蓝色背景屏幕(非蓝屏 crash )状态.此时你发现鼠标可以任意正常移动,但是屏幕上却没有任何的图标可以供操作,这种情况可能是 ...

  6. WPF 获取DataGrid 控件选中的单元格信息

    获取 DataGrid 选中的单元格的信息DataGridCellInfo cell_Info = this.studentTable.SelectedCells[0]; studentTableIt ...

  7. WPF DevExpress ChartControl用法

    WPF常用的第三方控件集,DevExpress中ChartControl的使用 下面介绍如何生成Chart界面: <dxc:ChartControl AnimationMode="On ...

  8. springMVC常见错误-解决org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.spring

    笔者参考文档: https://blog.csdn.net/sinat_24928447/article/details/47807105 可能错误原因即解决方法: 1.配置文件错误 a)这是配置文件 ...

  9. Java爬虫框架Jsoup学习记录

    Jsoup的作用 当你想获得某网页的内容,可以使用此框架做个爬虫程序,爬某图片网站的图片(先获得图片地址,之后再借助其他工具下载图片)或者是小说网站的小说内容 我使用Jsoup写出的一款小说下载器,小 ...

  10. 史上最全python面试题详解 (二)(附带详细答案(关注、持续更新))

    23.re的match和search区别? re.match()从开头开始匹配string. re.search()从anywhere 来匹配string. # 多行模式>>> re ...