zoukankan      html  css  js  c++  java
  • 集合2

    十三、特殊集合

    (一)定义

    1、Stack集合

    //先进后出。

    Stack aa = new Stack();
    aa.Push(1);//向stack集合中添加数据
    aa.Push(2);
    aa.Push(3);
    aa.Push(4);
    aa.Push(5);

    //注意:Stack是没有索引的。Console.WriteLine(aa[0]);是错误的。

    Console.WriteLine(aa.Peek());//仅用来查看最后一位,不踢出

    Console.WriteLine(aa.Pop());//弹出,踢出最后一个进入集合的数据

    int aaa = aa.Count;//统计个数

    aa.Clear();//清空集合

    foreach (object a in aa)
    {
       Console.WriteLine(a);
    }

    Console.ReadLine();

    2、Queue 队列集合
    //先进的先出,后进的后出
    //没有索引
    Queue qq = new Queue();
    qq.Enqueue(1);//给集合中添加元素
    qq.Enqueue(2);
    qq.Enqueue(3);
    qq.Enqueue(4);
    qq.Enqueue(5);

    qq.Dequeue();//将排在最前面的剔除
    int c =qq.Count;//统计个数

    qq.Peek();//只查看,不踢出

    qq.Clear();//清空集合
    bool bb =qq.Contains(3);//判断是否包含这个元素

    foreach (object b in qq)
    {
    Console.WriteLine(b);
    }

    Console.ReadLine();

    3、哈希表

    Hashtable hashtable=new Hashtable();

    hashtable.Add(0,"**")//添加元素,“,”前的为key,是添加的元素的键;“,”后的为value,是添加的元素的值,此值可以为空引用。

    hashtable.Clear();//移除Hashtable中的元素。

    hashtable.Remove(0);//移除Hashtable中指定的元素,Remove()的括号中填的是key。

    Console.WriteLine(hashtable.Contains(0));//判断Hashtable中是否包含指定的键。

    Console.WriteLine(hashtable.ContainsValue("**"));//判断Hashtable中是否包含指定的键值。

    (二)例题

    1、输入班级人数,根据人数创建集合ArrayList,先存人名,紧跟着分数,向表格一样打印,前面是人名,后面是成绩。

    主要代码:

                Console.Write("请输入班级人数:");
                int n = int.Parse(Console.ReadLine());
                Console.WriteLine();
                ArrayList grade = new ArrayList();
                for (int i = 0; i < n; i++)//法一
                {
                    Console.Write("请输入姓名:");
                    string name = Console.ReadLine();
                    grade.Add(name);
                }
                Console.WriteLine();
                for (int i = n; i < 2 * n; i++)
                {
                    Console.Write("请输入分数:");
                    double score = double.Parse(Console.ReadLine());
                    grade.Add(score);
                }
                Console.WriteLine();
                Console.WriteLine("姓名	分数");
                for (int i = 0; i < n; i++)
                    Console.WriteLine(grade[i] + "	" + grade[n + i]);
                Console.WriteLine();
                for (int i = 0; i < 2 * n; i++)//法二
                {
                    if (i == 0)
                    {
                        Console.Write("请输入姓名:");
                        string name = Console.ReadLine();
                        grade.Add(name);
                    }
                    else if (i % 2 == 0)
                    {
                        Console.Write("请输入姓名:");
                        string name = Console.ReadLine();
                        grade.Add(name);
                    }
                    else
                    {
                        Console.Write("请输入分数:");
                        double score = double.Parse(Console.ReadLine());
                        grade.Add(score);
                    }
                }
                Console.WriteLine();
                Console.WriteLine("姓名	分数");
                for (int i = 0; i < 2 * n; i++)
                {
                    if (i == 0)
                        Console.Write(grade[i] + "	");
                    else if (i % 2 == 0)
                        Console.Write(grade[i] + "	");
                    else
                        Console.Write(grade[i] + "
    ");
                }
                Console.WriteLine();
                    Console.ReadLine();

    结果:

    1、

    2、

  • 相关阅读:
    《想把我唱给你听》
    《我相信》现代卓越PMClub2010年会(完整版)
    项目采购管理管理采购
    AlizeeLa_isla_bonita
    Finish to read PMbook for one time
    《你是我心里的一首歌》
    吴炜摄影教程随堂笔记3
    项目采购管理结束采购
    Happy Christmas!!!
    第1章 引论
  • 原文地址:https://www.cnblogs.com/bosamvs/p/5483295.html
Copyright © 2011-2022 走看看