C# 集合 特殊集合
一集合
1、可为不同类型,不固定长度
2、集合类型分为泛型集合(强类型集合)与非泛型集合(弱类型集合)。
3、非泛型集合的类和接口位于using System.Collections命名空间。
4、泛型集合的类和接口位于using System.Collections.Generic命名空间。
表达式
List <int> arr = new List<int>(); //强类型 ,每个集合中只含有同一种类型
ArrayList arr = new ArrayList(); //弱类型
arr.Add( 10 );C
arr.Add( "aaa" ); // 赋值 集合名 . Add( );
arr.Add( 10.5 );
arr.Add( true ); // T (object)基类,可用于所有类型
arr.Add( dt );
Console.WriteLine( arr [ 索引 ] ); //取值 集合名 [ 索引 ]
foreach ( int i in arr ) // foreach 遍历,将 i 代表的每一个内容循环一遍
{
Console.WriteLine( i ); // 打印 使用 foreach 遍历
}
方法
插队 .Insent ( 索引 , 值/变量 );
arr.Insent( 2,30 ); 在索引 2 的位置上插入值为 30 的数
移除 .Remove( 值 )
.RemoveAt( 索引 ) arr.Remove( 10 ) 移除第一个与值相匹配的对象。
arr.RemoveAt( 1 ) 移除索引 1 所标记的对象。
反转 .Reverse( );
.Reverse( 索引 , 值 ); arr.Reverse( ); 全部反转
arr.Reverse( 1,3 ); 从索引 1 (包含)开始往后 3 个对象进行反转
清空 .Clear();
计算个数 .Count; //集合是一个开放性的没有长度只有个数
是否包含 .Contains( ); // 对所有集合都适用
案例:是否包含“bbb”,是否包含"b"
List <string> sl = new List<string>();
sl.Add("aaa");
sl.Add("bbb");
sl.Add("ccc");
1 是否包含"bbb"
(1)
bool has = false;
foreach (string s in sl)
{
if ( s=="bbb")
has = true
}
(2)
bool has = sl.Contains("bbb");
Console.WriteLine( has );
2 是否包含"b"
bool has = false
foreach (string s in sl )
{
if ( s .Contins(" b ") )
has = ture
}
特殊集合
一 哈希表集合(弱)
弱类型,用户自定义索引。不能插队,不能反转,可删可清。
表达式
Hashtable hs = new Hashtable ();
赋值 hs . Add ( 建,值); //利用键值对赋值, 建:keys 值:values
取值 hs [ 建 ]
打印 foreach (string s in hs ) //类型要统一
[
Console.WriteLine( s );
]
二 字典(强)
表达式
Dictionary <键 , 值> dic = new Dictionary <键 , 值> ( );
// 建 同一类型。值 同一类型。
三 队列集合 //先进先出
表达式
Queue q = new Queue( );
赋值 q . Enqueue( );
取值 q . Dequeue( ); // 返回并移除集合中的对象。
四 栈桥集合 //先进后出
表达式
Stack st = new Stack;
赋值 st . push ( );
取值 st . pop ( ); //返回并移除
C# 集合 特殊集合的更多相关文章
- 【BZOJ-4199】品酒大会 后缀数组 + 并查集合并集合
4199: [Noi2015]品酒大会 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 436 Solved: 243[Submit][Status] ...
- Linq to 泛型集合查询集合包括大写M和年龄小于等于18
#region Linq to 泛型集合查询集合包括大写M和年龄小于等于18 //List<Student> list = new List<Student&g ...
- IT第二十一天 - Collections、ArrayList集合、LinkedList集合、Set集合、HashMap集合、集合的操作注意【修20130828】
NIIT第二十一天 上午 集合 1. 集合Collection存储数据的形式是单个存储的,而Map存储是按照键值对来存储的,键值对:即键+值同时存储的,类似align="center&quo ...
- 数组转集合、集合转数组、字符串数组与int型、long型数组等的转换
在项目中经常会遇到数组转集合.集合转数组.数组之间类型转换等操作 1.数组转集合 为了实现把一个数组转换成一个ArrayList,很多Java程序员会使用如下的代码: String str[] = { ...
- 廖雪峰Java5集合-1Java集合简介-1Java结合简介
1.集合 定义:集合就是一堆东西.集合里的东西,称为元素Element 数学中的集合: 有限集合: * 一个班所有的学生组成的集合 * 一个网站所有的商品组成的集合 无限集合: * 全体自然数集合 * ...
- Java集合 -- ArrayList集合及应用
JAVA集合 对象数组 集合类之ArrayList 学生管理系统 斗地主案例 NO.one 对象数组 1.1 对象数组描述 A:基本类型的数组:存储的元素为基本类型 int[] arr={1,2,3, ...
- Java集合----Set集合
Set集合 Set 集合不允许包含相同的元素,如果试把两个相同的元素加入同一个 Set 集合中,则添加操作失败. Set 判断两个对象是否相同不是使用 == 运算符,而是根据 equals 方法 Ha ...
- Java集合----List集合
List List 代表一个元素有序.且可重复的集合,集合中的每个元素都有其对应的顺序索引List 允许使用重复元素,可以通过索引来访问指定位置的集合元素.List 默认按元素的添加顺序设置元素的索引 ...
- 集合_java集合框架
转载自http://blog.csdn.net/zsw101259/article/details/7570033 Java集合框架图 简化图: Java平台提供了一个全新的集合框架.“集合框架”主要 ...
- Java 集合学习--集合概述
一.集合框架 集合,通常也叫容器,java中有多种方式保存对象,集合是java保存对象(对象的引用)的方式之一,之前学习的数组是保存对象的最有效的方式,但是数组却存在一个缺陷,数组的大小是固定的,但是 ...
随机推荐
- Win7下无法启动sql server fulltext search (mssqlserver)的问题
在Win7下安装了SQL Server 2005, 但启动“SQL Server FullText Search (MSSQLSERVER)”服务时启动不成功,系统日志显示“SQL Server Fu ...
- 新建WebAPI项目时遇到的问题
1 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler” 以管理员运行下面的命令注册 ...
- 背水一战 Windows 10 (45) - 控件(图标类): IconElement, SymbolIcon, FontIcon, PathIcon, BitmapIcon
[源码下载] 背水一战 Windows 10 (45) - 控件(图标类): IconElement, SymbolIcon, FontIcon, PathIcon, BitmapIcon 作者:we ...
- 改变PowerDesigner数据模型字体大小
一 改变左侧菜单字体大小Tools----->General------->Fonts-------->根据item选项的不同改变字体的大小 二 改变数据模型Table的字体大小To ...
- 【mock】后端不来过夜半,闲敲mock落灯花 (mockjs+Vuex+Vue实战)
mock的由来[假] 赵师秀:南宋时期的一位前端工程师 诗词背景:在一个梅雨纷纷的夜晚,正处于项目编码阶段,书童却带来消息:写后端的李秀才在几个时辰前就赶往临安度假去了,!此时手头仅有一个简单 ...
- CE修改器使用教程 [基础篇]
Cheat Engine 是一款内存修改编辑工具 ,它允许你修改你的游戏或软件内存数据,以得到一些其他功能.它包括16进制编辑,反汇编程序,内存查找工具.与同类修改工具相比,它具有强大的反汇编功能, ...
- [原创]K8 CMS GoastGuard 密码解密工具
工具: K8 CMS GoastGuard PASS Decrypt编译: VS2012 C# (.NET Framework v4.5)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客 ...
- JS获取客户端IP地址、MAC和主机名的7个方法汇总
今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...
- ubuntu升级pip后, ImportError: cannot import name ‘main‘
场景描述: 原先pip安装完成之后,一直没有更新版本,原pip版本为8.1.1,今天安装python 包pysftp的时候,提示需要升级pip到(pip 10.0.1); 于是乎,直接手到擒来,终端命 ...
- Kotlin 语言作为Android新的官方语言
苹果用 swift 作为官方语言替代 object-c ; 谷歌 刚开完io大会 也宣布 用 kotlin 作为官方语言 替代java.工具还是xcode ,android studio. 来自于 ...