复习2-----集合

集合:
理解为箱子,没有固定长度,可以放任意类型的数据或是变量;
集合也有索引;

ArrayList:
定义:
ArrayList arr = new ArrayList();
添加元素:
arr.Add(a);
arr.Add(b);

取值:
arr[索引];
注意的是,取值时是object类型,需要进行类型转换;

注意:一个集合虽然可以放任意类型,但是我们使用时一般一个集合就放一种类型;

特殊功能:
arr.Add(); 添加元素
arr.Insert(索引,值); 插队,将值插队进到索引的位置
arr.Remove(值); //根据值来删除集合中的元素
arr.RemoveAt(索引); //根据索引来删除集合中的元素
arr.Clear(); //清空集合

arr.Sort(); //从小到大排列集合中的所有元素
arr.Reverse();
arr.Contains(); //查看集合中是否包含某个元素
arr.count; //集合中元素的个数,返回一个int类型

-------------------------------------------------------------

特殊集合:

Queue 队列集合
定义:
Queue qq = new Queue();
添加元素:
Enqueue("值"/变量);
取值:
Dequeue(); //取第一个进去的值,并在集合中删除掉
Peek(); //取第一进去的值给你看看,不会在集合中删除
-------------------------------------------------------------
Stack 栈桥集合
定义:
Stack ss = new Stack();
添加元素:
ss.Push("值"/变量);
取值:
ss.Pop(); //先进去的后出来,取到的是最后一个进去的,并在集合中删除掉
ss.Peek(); //取最后一个进去的,拿出来给你看看,不会在集合中删除掉
-------------------------------------------------------------
Hashtable:哈希表集合
键值对, 一个建对应一个值;
定义:
Hashtable ha = new Hashtable();
添加元素:
Add(key,value); //key键,用户自定义索引,为object类型
//value值,当前这个索引所对应的内容
取值:
ha[key]; //根据用户自定义索引来取出相对应的内容

遍历:
foreach (string i in ha.Keys) //可以单独遍历键
{
Console.WriteLine(i);
}

foreach (string i in ha.Values) //可以单独遍历值
{
Console.WriteLine(i);
}
-------------------------------------------------------------
泛型集合:
List<类型> li = new List<类型>();

li.Add(同一类型的值或变量);

li[索引]

时间: 2024-10-16 14:11:25

复习2-----集合的相关文章

python第三天学习复习,集合set,文件操作,函数(普通函数,递归,高阶函数),字符编码和解码

三元运算 age = 23 #就是if else的简单写法 a = age if age < 20 else 25 集合 set #集合是无序切不重复的, #当对列表去重复的时候,可以直接使用 set(list),就将list转为set,并去除中间重复的 list = [1,2,3,4,5,5,6,7,8,9,1] s = set(list) 运行结果:可以发现将 list中重复的去掉,并且类型变成set,再使用list(set),转为list 集合操作 # Author:zylong set1

JavaSE复习_8 集合框架复习

△列表迭代器也是不支持在迭代的时候添加元素的,只是列表迭代器自己定义了增删的方法而已.迭代器可以看成实在两个元素之间的指针,每当调用next就跳过一个元素并返回刚刚跳过的元素. △HashTable不允许null作为键和值,而HashMap可以. △在Java中,所有链表实际上都是双向连接的,即每个节点还存放着指向前驱节点的引用 ,add方法将在listiterator迭代器位置前添加一个元素.尽管有Listiterator,但是对列表的并发修改仍然会产生异常,但是这里有个特例,set操作不被视

7.30 数组复习 特殊集合

数组            一维数组            需要数据类型,以及长度            int [] array =new int[5];            冒泡排序                        {                for (int j = i; j < 4; j++)                {                    if (array[i] < array[j + 1])                    { 

java基础复习(集合、泛型、IO流、多线程、Junit 、内省 、Properties、 路径问题)

集合 泛型 IO流 多线程 Junit Assert 注解 内省 Properties 路径问题 集合 ---|Collection: 单列集合 ---|List: 有存储顺序, 可重复 ---|ArrayList: 数组实现, 查找快, 增删慢 由于是数组实现, 在增和删的时候会牵扯到数组 增容, 以及拷贝元素. 所以慢.数组是可以直接按索引查找, 所以查找时较快 ---|LinkedList: 链表实现, 增删快, 查找慢由于链表实现, 增加时只要让前一个元素记住自己就可以, 删除时让前一个

[Java复习02] 集合框架Collection - 面试题小结

Q1 Collection java的集合以及集合之间的继承关系? 数组和链表的区别? 固定长度,连续内存,不能扩展,随机访问快,插入删除慢.链表相反 List, Set, Map的区别? List,Set继承Collection接口 List可以放重复数据,Set不能,Map是k-v对 List和Map的实现方式以及存储方式? ArrayList: 底层动态数组.随机访问快,增删慢,线程不安全. 扩容导致数组复制,批量删除会导致找两个集合交集,效率低. LinkedList: 底层链表(双向列

Java复习:集合框架(一张图)

最后一个看不见了补充一下: ConcurrentHashMap:是线程安全的(基于lock实现的,同步的时候锁住的不是整个对象,而加了synchronized的是锁住了整个的对象),实现了Map接口,他是在hashMap的基础上,将数据分为很多个小的segment(分段锁,他继承了ReentrantLock),默认16,每次操作都对segment加锁,避免多线程的几率,提高并发效率,从他的源码中可以看出,他引入了一个"分段锁"的概念,就是可以看作把一个Map分成很多个HashTable

我们复习.Net的这些日子里

今天是我们复习前面学习的第三天,也是在今天我们结束了复习.之前上学时间感觉知识全是生僻的,在生活中很少用到,因此喜欢重复的记忆,而现在学习的知识全是现在乃至未来,将是每天我们使用的,所以就感觉没必要重复记忆啦,只要我记得知识点的存在然后会想起来具体的内容的,可是今天的复习我发现这样的做法还是不对的,也可能只是刚开始啦,太多东西都是硬性的,因此我想通过这篇文章来重新捡起来我忘记的,嘿嘿.下面就来说下具体容易忘记的和做起来题还是比较生硬的吧. 一.构造函数 构造函数方法名和类名一样,没有返回值,连v

[转载] Bitmap的秘密

转载自http://www.infoq.com/cn/articles/the-secret-of-bitmap/ 之前已经参加过几次QCon峰会,不过今年QCon 2014 上海峰会对我来说比较特别,不再只是一名听众,而是第一次登台演讲.感觉的确不太一样,一来是身份从听众变成了讲师,二来是因为成了讲师,让我接触到更多的业内朋友,也遇到了更多的提问.咨询.会后已经有一段时间了,还有朋友提出想了解更多的技术知识.看来会上行云流水的半个小时,未能把一个技术点讲述明白,我想还是总结一下,让技术圈朋友们

Bitmap的秘密

作者: 周海鹏  来源: infoQ  发布时间: 2015-02-13 11:26  阅读: 4999 次  推荐: 10   原文链接   [收藏] 之前已经参加过几次QCon峰会,不过今年QCon 2014 上海峰会对我来说比较特别,不再只是一名听众,而是第一次登台演讲.感觉的确不太一样,一来是身份从听众变成了讲师,二来是因为成了讲师,让我接触到更多的业内朋友,也遇到了更多的提问.咨询.会后已经有一段时间了,还有朋友提出想了解更多的技术知识.看来会上行云流水的半个小时,未能把一个技术点讲述

C#中的LINQ 基础

1.LINQ的数据源 必须可枚举的,即必须是数组或者集合 (继承了IEnumerable<T>接口就可以,注意是IEnumerable<T>,不是IEnumerable接口,不一样,继承后者只能使用foreach,不能使用linq) 定义:Linq 是一跨各种数据源和数据格式的数据模型:它在查询是,始终是把它作为一种对象来操作,可以使用基本相同的编码模型查询和数据的转换XML,SQL,ADO数据等:   对于自定义属性类,继承CollectionBase类,实现了索引器,但是没有实