【C#学习】--Arraylist(集合)总结
来源:互联网 发布:一洋淘宝seo管家 编辑:程序博客网 时间:2024/06/04 19:21
今天来研究一下C#中的集合,那么,集合是怎么来的,又是怎么用的,使用集合有什么好处呢,您往下看就知道了…… ☺☺☺
1、集合是什么?
集合可以看做是一个长度可变的,有很多方法的数组。所以我理解的集合也是一个容器,而且是一个不限类型不限量,什么都可以装的容器。使用集合时要导入命名空间Using system Collections.
2、集合是怎么来的?
谈到集合当然要聊聊他的前辈--数组,数组有很多的优点,比如说数组在内存中是连续存储的,所以它的索引速度是非常的快,而且赋值与修改元素也很简单,但是,数组也存在一些不足的地方。比如在数组的两个数据间插入数据也是很麻烦的。还有我们在声明数组的时候,必须同时指明数组的长度,数组的长度过长,会造成内存浪费,数组和长度过短,会造成数据溢出的错误。这样如果在声明数组时我们并不清楚数组的长度,就变的很棘手了。针对于数组的这些缺点,C#中最先提供了ArrayList对象来克服这些缺点。
3、集合怎么使用呢?
首先可以使用add()方法添加数据
先实例化一个集合:
Arraylist al =new Arraylist();
(1)往某个下标的位置插入值,al.Insert()
(2)移除,清空 , al.clear()
(3)判断集合中是否包含某个元素:al.contains()
(4)产生一个整数范围内的随机数,Next(num)
Next(minNum,maxNum)
产生一个在minNum到maxNum-1之间的数字,主要是确定范围
(5)求集合中元素的个数,返回int类型: Int num=al.count;
(6)找某一个元素对应的索引,Int number=al.indexof();//
(7)移除索引对应的值,al.remove(1);//
(8)从指定索引处开始移除,如果超出索引报异常,eg: al.Removerange(3,13);
表示的是从指定的第三处开始直到索引为13的地方,将这部分移除。这个方法也是含有重载,可以多点点试试。
5、听了这么多理论,下面举个例子实践一下吧:
要求生成10个不重复的随机数,然后求和取平均显示出来,代码如下:
//随机的往集合里添加数据,不能重复,再求和,取平均值 ArrayList arr = new ArrayList(); // 先实例化一个集合arr Random r = new Random(); int sum=0; while (arr.Count!=10) // count属性可以获得集合长度,此处循环10次,产生10个不重复随机数 { int num = r.Next(1, 100); // 生成随机数在1-100之间 if (!arr.Contains(num)) // contains()方法判断是否包含某元素 { arr.Add(num); //add()方法往集合中添加元素 } }// end while for (int i = 0; i < arr.Count; i++) // 将10个数输出,并计算 { Console.WriteLine(arr[i]); //依次输出10个随机数 if (arr[i] is int) { sum += (int)arr[i]; //求和 } } Console.WriteLine("随机数的总和为{0},平均值为{1}",sum,sum/(arr.Count)); Console.ReadKey();
下面是显示实现的结果: ☺☺☺ 完美~~
【总结】
接触一个新东西的时候善于与过去的事物找联系,新事物一定不是凭空产生的,问问自己为什么会有这个新事物,他的出现有什么好处,这样知识网才更强有力。
0 0
- 【C#学习】--Arraylist(集合)总结
- c#学习——arraylist集合
- C#学习笔记之ArrayList集合
- Java集合深入学习总结-ArrayList
- C# 集合类(一):ArrayList
- C# 集合类(一):ArrayList
- C# 集合类(一):ArrayList
- C# 集合类(一):ArrayList
- C# 之 集合ArrayList
- C#集合:ArrayList
- C#中ArrayList集合
- 总结C#集合类 Array Arraylist List Hashtable Dictionary
- 总结:集合框架(LinkedList,ArrayList,HashSet)
- 集合之ArrayList总结
- C# ArrayList 集合的使用
- Java集合之ArrayList总结
- 【C#学习】ArrayList Hashtable List Dictionary 对比总结
- C#学习之ArrayList
- 高压缩空间占用的 Hyper LogLog 算法
- Codeforces Round #381 (Div. 2) C. Alyona and mex 贪心+构造
- /etc/apt/source.list
- 探索推荐引擎内部的秘密,第 2 部分: 深入推荐引擎相关算法 - 协同过滤
- css3 animation
- 【C#学习】--Arraylist(集合)总结
- springboot 开发入门,及问题汇总
- Git 常用命令速查表
- 探索推荐引擎内部的秘密,第 3 部分: 深入推荐引擎相关算法 - 聚类
- Mybatis多参数查询与列表查询不同方式实现
- 基于SpringBoot + Mybatis实现SpringMVC Web项目
- 强调在正则中只要单纯用了括号就会有捕获分组保存
- 焊接技巧 -- 拖焊
- C语言提取(key,value)键值对