arrayList

首先复制Colections加  ;

创建arrayList ar =new arrayList();

//ArrayList al=new ArrayList();
            //实例化初始化
            //al.Add(4);
            //真的添加
            //al[0]=3;
            //al[0]这种赋值方式只是修改
            //Console.WriteLine(al[0]);
            //al.Insert(2,"hello");
            //原有的个数加一;
            //al.Clear();

——————————————————————————————————————————————————————————————————————————————

ArrayList具体提供的功能:
属性                           功能说明
Count        获取 ArrayList 中实际包含的元素数 
方法                           功能说明
Add ()         将对象添加到 ArrayList 的结尾处
Clear()          从 ArrayList 中移除所有元素
Clone()        创建 ArrayList 的浅表副本 
Contains()        确定某元素是否在 ArrayList 中
IndexOf()            已重载。返回 ArrayList 或它的一部分中某个值的第一个匹配项的从零开始的索引 
Insert()        将元素插入 ArrayList 的指定索引处。可在任意位置插入
LastIndexOf()      已重载。返回 ArrayList 或它的一部分中某个值的最后一个匹配项的从零开始的索引
Remove()           从 ArrayList 中移除特定对象的第一个匹配项 
RemoveAt()         移除 ArrayList 的指定索引处的元素 
Sort()             已重载。对 ArrayList 或它的一部分中的元素进行排序,升序
Reverse()                     翻转整个集合

——————————————————————————————————————————————————————————————————————————————

例题输入一些中将手机号码。滚动循环一共三秒钟。加(作弊)

ArrayList al =new ArrayList();
            Console.Write("请输入人数  ");
            int   a =int.Parse( Console.ReadLine());
            long f=12345678789;

for (int i = 0; i < a; i++)
            {
                Console.Write("请输入第{0}个人的手机号",(i+1));
                al.Add(Console.ReadLine());   
            }
            Console.Write("所有号码输入完毕");
            Console.ReadLine();
            Random c= new Random();
            for (int i= 0; i< 30; i++)
            {
                int  b = c.Next(a);
                Console.Write("中奖号码是:" +al[b]);
                System.Threading.Thread.Sleep(100);
                Console.Clear();         
            }         
            Console.Clear();
            Console.Write("中奖号码为" + f);
            Console.ReadLine();

————————————————————————————————————————————————————————————————————————————————

例二

输入班级人数还有每个人的姓名。语文,数学英语成绩。求语文最高分,并且输出姓名分数,数学最低分和姓名,还有英语的平均分

ArrayList al = new ArrayList();
            Console.Write("请输入班级的人数");
            int a = int.Parse(Console.ReadLine());
            for (int i = 0; i < a; i++)
            {
                Console.Write("请输入第{0}个人的姓名:", i + 1);
                al.Add(Console.ReadLine());
                Console.Write("请输入第{0}个人的语文成绩:", i + 1);
                al.Add(Console.ReadLine());
                Console.Write("请输入第{0}个人的数学成绩:", i + 1);
                al.Add(Console.ReadLine());
                Console.Write("请输入第{0}个人的英语成绩:", i + 1);
                al.Add(Console.ReadLine());
            }
            for (int i = 0; i < 4 * a - 3; i += 4)
            {
                for (int j = i + 4; j < 4 * a - 2; j += 4)
                {
                    if (double.Parse(al[i + 1].ToString()) < double.Parse(al[j + 1].ToString()))
                    {
                        object h = al[i];
                        al[i] = al[j];
                        al[j] = h;
                        object f = al[i + 1];
                        al[i + 1] = al[j + 1];
                        al[j + 1] = f;
                        object g = al[i + 2];
                        al[i + 2] = al[j + 2];
                        al[j + 2] = g;
                        object d = al[i + 3];
                        al[i + 3] = al[j + 3];
                        al[j + 3] = d;
                    }
                }
            }
            Console.Write("{0}的语文成绩最高,是{1}.", al[0], al[1]);
            for (int i = 0; i < 4 * a - 3; i += 4)
            {
                for (int j = i + 4; j < 4 * a - 2; j += 4)
                {
                    if (double.Parse(al[i + 2].ToString()) >double.Parse(al[j + 2].ToString()))
                    {
                        object h = al[i];
                        al[i] = al[j];
                        al[j] = h;
                        object f = al[i + 1];
                        al[i + 1] = al[j + 1];
                        al[j + 1] = f;
                        object g = al[i + 2];
                        al[i + 2] = al[j + 2];
                        al[j + 2] = g;
                        object d = al[i + 3];
                        al[i + 3] = al[j + 3];
                        al[j + 3] = d;
                    }
                }
            }
            Console.Write("{0}的数学成绩最低,是{1}", al[0], al[2]);
            int s = 0;
            for (int i = 0; i <4*a; i+=4)
            {             
                s += int.Parse(al[i+3].ToString());           
            }
            Console.Write(s / a);
            Console.ReadLine();

————————————————————————————————————————————————————————————————————-——————————

//stack集合
            //    Stack st=new Stack();
            //    st.push(1);
            //    st.push(2);
            //    st.push(3);
            //    st.push(4);
            //    st.push(5);
            ////个数
            //    Console.WriteLine(st.Count);
            ////只要用pop就弹出
            ////只查看。不输出
            ////、Console.WriteLine(st.Peek());
            //    //foreach (int aa in st)
            //    //{
            //    //    Console.WriteLine(aa);
            //    //}

________________________________________________________________________________________________________________________________-

//队列集合。先进先出
            //    Queue que = new Queue();
            //    que.Enqueue(5);
            //    que.Enqueue(1);
            //    que.Enqueue(3);
            //    que.Enqueue(5);
            //    que.Enqueue(6);
            ////一出一个元素,从头开始
            //    que.Dequeue();
            //    foreach (int aa in que)
            //    {
            //        Console.WriteLine(aa);
            //    }

————————————————————————————————————————————————————————————————————————————————

//哈希表集合         
           // //一个一个赋值,但是只能一起取值
           // Hashtable ht = new Hashtable();
           //// 添加元素
            //ht.Add(1, "一");
            //ht.Add(2, "二");
            //ht.Add(3, "三");
            //ht.Add(4, "四");
            //ht.Add(5, "五");
            //ht.Add(6, "六");
            //ht.Add(7, "七");
            //foreach (object /*如果不知道就用object*/aa in ht.Keys)//单纯的key的类型
            //{
            //    Console.WriteLine(aa);
            //}
            //foreach (object /*如果不知道就用object*/bb in ht.Values)//单纯的Value的类型
            //{
            //    Console.WriteLine(bb);
            //}
            ////使用枚举类型排列成表格
            //IDictionaryEnumerator ide = ht.GetEnumerator();
            //while (ide.MoveNext())//当ide能够获取到下一个时
            //{
            //    Console.WriteLine(ide.Key + "\t" + ide.Value); //没有s表示一组。有s表示集合
            //}

_______________________________________________________________________________________________________________________________

集合、ArrayList 集合。Stack集合。Queue集合。以及Hashtable集合的更多相关文章

  1. 集合的概念 Stack和Queue Dictionary ArrayList和List<T>方法及用法

    Stack和stack<T>方法一样// 管理方式: 后进先出 LIFO 栈// Stack<string> s=new Stack<string>();//(放一 ...

  2. HashTable集合和练习题_计算一个字符串中每一个字符出现的次数

    HashTable集合 /** * java.util.Hashtable<K,V>集合 implement Map<K,V>接口 * Hashtable:底层也是一个哈希表, ...

  3. 转:C#常用的集合类型(ArrayList类、Stack类、Queue类、Hashtable类、Sort)

    C#常用的集合类型(ArrayList类.Stack类.Queue类.Hashtable类.Sort) .ArrayList类 ArrayList类主要用于对一个数组中的元素进行各种处理.在Array ...

  4. Java集合的Stack、Queue、Map的遍历

    Java集合的Stack.Queue.Map的遍历   在集合操作中,常常离不开对集合的遍历,对集合遍历一般来说一个foreach就搞定了,但是,对于Stack.Queue.Map类型的遍历,还是有一 ...

  5. 特殊集合(stack、queue、hashtable的示例及练习)

    特殊集合:stack,queue,hashtable stack:先进后出,一个一个的赋值一个一个的取值,按照顺序. .count           取集合内元素的个数 .push()        ...

  6. 10-23C#基础--特殊集合(stack、queue、hashtable)

    特殊集合一:stack集合--堆集合 1.定义:堆集合是集合中一种特殊的类,在Stack中也有许多方法和属性,下面一一列举: 命名格式:Stack ss=new Stack(); 2.如何添加数据:p ...

  7. Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别

    ArrayList和Vector的区别ArrayList与Vector主要从二方面来说.  一.同步性:   Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步 ...

  8. 数组Array和列表集合ArrayList、LinkedList和Vector的区别

    一.ArrayList和Vector的区别 ArrayList与Vector主要从以下方面来说. 1.同步性: Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同 ...

  9. Java 集合系列 06 Stack详细介绍(源码解析)和使用示例

    java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...

  10. Java集合框架(四)—— Queue、LinkedList、PriorityQueue

    Queue接口 Queue用于模拟了队列这种数据结构,队列通常是指“先进先出”(FIFO)的容器.队列的头部保存在队列中时间最长的元素,队列的尾部保存在队列中时间最短的元素.新元素插入(offer)到 ...

随机推荐

  1. Java基础(49):快速排序的Java封装(含原理,完整可运行,结合VisualGo网站更好理解)

    快速排序 对冒泡排序的一种改进,若初始记录序列按关键字有序或基本有序,蜕化为冒泡排序.使用的是递归原理,在所有同数量级O(n longn) 的排序方法中,其平均性能最好.就平均时间而言,是目前被认为最 ...

  2. linux时间的查看与修改

    1.查看时间和日期 date 2.设置时间和日期 将系统日期设定成1996年6月10日的命令 date -s 06/22/96 将系统时间设定成下午1点52分0秒的命令 date -s 13:52:0 ...

  3. Android 沉浸式状态栏

    1,传统的手机状态栏是呈现出黑色或者白色条状的,有的和手机主界面有很明显的区别.这样就在一定程度上牺牲了视觉宽度,界面面积变小.看一下QQ的应用 2,实现起来也挺简单的,来一起看一下吧 MainAct ...

  4. JQ 获取单选按钮选中的值

    ==========================html 代码 <input type="radio" style="float: left " on ...

  5. redis连接数问题

    redis连接数查看 info client redis连接数满了,不会继续建立连接. 造成redis连接数满了原因有很多. 1.建立新连接不close()的话redis连接不会回归连接池. 显示所有 ...

  6. dataTabel转成dataview插入列后排序

    if (!string.IsNullOrEmpty(strQuyu) && !string.IsNullOrEmpty(strZuhao)) { string[] param = { ...

  7. 一般处理程序 ashx中使用外部Session 出现不存在 解决方案

    MXS&Vincene  ─╄OvЁ  &0000004 ─╄OvЁ  MXS&Vincene MXS&Vincene  ─╄OvЁ:今天很残酷,明天更残酷,后天很美好 ...

  8. android 项目学习随笔五(JSON解析)

    1.利用Xutils获取网络数据 /** * 从服务器获取数据 需要权限: <uses-permission * android:name="android.permission.IN ...

  9. Respond.js – 让 IE6-8 支持 CSS3 Media Query

    Respond.js 是一个快速.轻量的 polyfill,用于为 IE6-8 以及其它不支持 CSS3 Media Queries 的浏览器提供媒体查询的 min-width 和 max-width ...

  10. 【secureCRT】如何在secureCRT上设置常用的快捷输出按钮栏

    转自:http://jingyan.baidu.com/article/5d6edee2f32de199eadeec25.html 方法/步骤   打开secureCRT软件,单击菜单栏上面的[查看] ...