集合

1、集合的引用

using System.Collections;//添加类

2、定义集合(ArrayList 或 Array)

ArrayList arr = new ArrayList();

3、添加数据(可以放多种不同数据类型,但最好只放一种)

(一)单个数据

方法1:add增加

arr.Add();
arr.Add();
arr.Add("hello");

输出结果:

Console.WriteLine("add[0]:"+arr[]); //通过添加元素的先后顺序生成从0开始的索引,通过索引读取数据,输出结果为"3"
Console.WriteLine("add[1]:" + arr[]);//5
Console.WriteLine("add[2]:"+arr[]);//hello

方法2:insert插入,使从索引所示的数据开始的数据向后移动一位

arr.Insert(, );//Insert(索引,插入的数据)

输出结果:

Console.WriteLine("insert[0]"+arr[]);//
Console.WriteLine("insert[1]" + arr[]);//
Console.WriteLine("insert[2]" + arr[]);//
Console.WriteLine("insert[3]" + arr[]);//hello

(二)数组:

1、追加一组数据addrange

int[] shuzu = new int[] { , ,  };
arr.AddRange(shuzu);

遍历:

foreach (object o in arr)//因为集合中可能会有多种数据,所以要用object(基类)进行遍历,所有类型都可以转化为这个类型
{
Console.WriteLine("遍历1:" + o);
}

2、从指定索引开始插入一组数据InsertRange

arr.InsertRange(, shuzu);
//遍历
foreach (object o in arr)
{
Console.WriteLine("遍历2:" + o);
}

4、移除数据:(只移除第一个匹配项)

(一)移除指定数据(值):Remove

arr.Remove();//移除值为17的数据
foreach (object o in arr)
{
Console.WriteLine("Remove后:" + o);
}

(二)移除指定索引位置的元素:RemoveAt

arr.RemoveAt();
Console.WriteLine("Remove后索引为[3]的数据:"+arr[]);

5、排序:

(1)sort:自动按升序排列

ArrayList arr1 = new ArrayList();
for (int i = ; i < ; i++)
{
arr1.Add(int.Parse(Console.ReadLine()));
}
arr1.Sort();
foreach (object o in arr1)
{
Console.WriteLine("升序sort:"+o);
}

(2)Reverse:翻转集合的排序(使其变为降序)

arr1.Reverse();
foreach (object o in arr1)
{
Console.WriteLine("翻转reverse后降序:"+o);
}

6、集合的属性:

count:返回集合里面有多少元素

Console.WriteLine("元素个数为:" + arr1.Count);

7、返回索引IndexOf

Console.WriteLine("hello所在的索引为:"+arr.IndexOf("hello"));//只返回第一个匹配项所在的索引
Console.WriteLine("hello所在的最后一个匹配项所在的索引为:" + arr.LastIndexOf("hello"));//返回最后一个匹配项所在的索引

**插入的数组索引也是按单个数据排列的,如:插入一组三个数的数组,会建立三个索引。

8、contains:判断是否有某个元素,返回bool值

arr.Contains(1);

9、清空集合

arr.Clear();

10、C#基础整理(集合)的更多相关文章

  1. JAVA基础整理-集合篇(一)

    集合作为JAVA的基础知识,本来感觉自己理解的很清楚了,但是在最近的一次面试中还是答得不尽如人意!再次做一下整理,以便加深理解以及随时查阅. 首先,java.util包中三个重要的接口及特点:List ...

  2. 备战金三银四!一线互联网公司java岗面试题整理:Java基础+多线程+集合+JVM合集!

    前言 回首来看2020年,真的是印象中过的最快的一年了,真的是时间过的飞快,还没反应过来年就夸完了,相信大家也已经开始上班了!俗话说新年新气象,马上就要到了一年之中最重要的金三银四,之前一直有粉丝要求 ...

  3. 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法

    这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...

  4. [转帖]nginx基础整理

    nginx基础整理 https://www.cnblogs.com/guigujun/p/6588545.html 目录结构如下: Nginx基础知识 Nginx HTTP服务器的特色及优点 Ngin ...

  5. Windows 10开发基础——文件、文件夹和库(一)

    原文:Windows 10开发基础--文件.文件夹和库(一) 主要内容: 1.枚举查询文件和文件夹 2.文本文件读写的三种方法——创建写入和读取文件 3.获得文件的属性 枚举查询文件和文件夹 先了解一 ...

  6. Mac使用最多的软件,整理集合

    软件资源 #[PDF移除密码]Cisdem PDFPasswordRemover 3.0.0 [TNT] #Alfred_3.1.1_737 #fwmso2016vlu2.0 #iHosts #Omn ...

  7. 10个基础的linux网络和监控命令

    配置zookeeper集群时,需要查看本机ip,输入命令 hostname -i   就会只显示主机ip, 下边搜了一篇常用的    命令,闲的时候多敲敲命令,以便用的时候再找! 我下面列出来的10个 ...

  8. MySQL基础整理(一)之SQL基础(未完成)

    大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2. ...

  9. java基础-Map集合

    java基础-Map集合 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Map集合概述 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它 ...

  10. JavaScript基础笔记集合(转)

    JavaScript基础笔记集合   JavaScript基础笔记集合   js简介 js是脚本语言.浏览器是逐行的读取代码,而传统编程会在执行前进行编译   js存放的位置 html脚本必须放在&l ...

随机推荐

  1. Android receiver

    可以在代码文件中声明一个receiver,也可以在manifest中声明一个,前者中的receiver只有在该activity launch起来以后才会监听其所感兴趣的事件, 而如果在androidM ...

  2. Android 编程下的代码混淆

    什么是代码混淆 Java 是一种跨平台的.解释型语言,Java 源代码编译成中间”字节码”存储于 class 文件中.由于跨平台的需要,Java 字节码中包括了很多源代码信息,如变量名.方法名,并且通 ...

  3. java.lang.IllegalArgumentException: addChild: Child name '/SSHE' is not unique

    错误信息: Caused by: java.lang.IllegalArgumentException: addChild:  Child name '/SSHE' is not unique     ...

  4. js从千分位格式

    从千分位格式化谈JS性能优化 http://heeroluo.net/article/detail/115 方法六 // 方法六 function toThousands(num) { ).toStr ...

  5. [转载]ME51n,ME52n,ME53n屏幕增强

    原文地址:ME51n,ME52n,ME53n屏幕增强作者:cyzhang811 http://blog.sina.com.cn/s/blog_721b218c0100zch9.html 使用增强:ME ...

  6. 9. shell环境

    • printenv –打印部分或所有的环境变量 • set –设置 shell 选项 • export —导出环境变量,让随后执行的程序知道. • alias –创建命令别名 1.shell环境:s ...

  7. HTML第一部分

    HTML      内容(hyper text  markup language,超文本标记语言) CSS        网页美化 Javacript 脚本语言 第一部分 HTML <html ...

  8. 在JSP中使用jQuery的冲突解决(收集整理)

    在JSP中使用<jsp:include page="somethingPage.jsp"></jsp>来嵌套页面的时候,会出现jQuery之间的冲突 解决办 ...

  9. Mysql 字符串处理函数

    函数: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my ...

  10. 关于时间序列数据库的思考——(1)运用hash文件(例如:RRD,Whisper) (2)运用LSM树来备份(例如:LevelDB,RocksDB,Cassandra) (3)运用B-树排序和k/v存储(例如:BoltDB,LMDB)

    转自:http://0351slc.com/portal.php?mod=view&aid=12 近期网络上呈现了有关catena.benchmarking boltdb等时刻序列存储办法的介 ...