• ArrayList集合 、特殊集合


    一、ArrayList集合 集合内可以放不同类型的元素

    另:object类型为所有数据类型的基类

    添加元素:.add();

    清空集合:al.clear();

    克隆集合:.clone();

    判断是否包含某个元素:.contains();

    获取第一次出现该元素的索引号:.indexof();

    获取最后一次出现该元素的索引号:lastindexof();

    移除第一个匹配元素:.Remove();

    移除某个索引位置上的元素:.RemoveAt();

    排序 升序:.sort();

    翻转集合:.Reverse();

    在有不同数据类型的时候需要遍历集合:用object foreach(object aa in ai )

    暂停程序:System.Threading.Thread.Sleep(300); 括号内为毫秒

    练习:输入班级人数 姓名 语数英成绩 输出语文最高分 数学最低分 是谁考的 以及英语平均分

    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 - 4; i += 4)
                {
                    for (int j = i + 4; j < 4 * a; j += 4)
                    {
                        if (double.Parse(al[i + 1].ToString()) < double.Parse(al[j + 1].ToString()))
                        {
                            object zhong = al[i + 1];
                            al[i + 1] = al[j + 1];
                            al[j + 1] = zhong;
                            zhong = al[i];
                            al[i] = al[j];
                            al[j] = zhong;
                            zhong = al[i + 2];
                            al[i + 2] = al[j + 2];
                            al[j + 2] = zhong;
                            zhong = al[i + 3];
                            al[i + 3] = al[j + 3];
                            al[j + 3] = zhong;
                        }
                    }
                }
                Console.Clear();
                Console.WriteLine("语文成绩最高分是{0},是{1}考的。", al[1], al[0]);
                for (int i = 0; i < 4 * a - 4; i += 4)
                {
                    for (int j = i + 4; j < 4 * a; j += 4)
                    {
                        if (double.Parse(al[i + 2].ToString()) > double.Parse(al[j + 2].ToString()))
                        {
                            object zhong = al[i + 1];
                            al[i + 1] = al[j + 1];
                            al[j + 1] = zhong;
                            zhong = al[i];
                            al[i] = al[j];
                            al[j] = zhong;
                            zhong = al[i + 2];
                            al[i + 2] = al[j + 2];
                            al[j + 2] = zhong;
                            zhong = al[i + 3];
                            al[i + 3] = al[j + 3];
                            al[j + 3] = zhong;
                        }
                    }
                }
                Console.WriteLine("数学成绩最低分是{0},是{1}考的。", al[2], al[0]);
                double sum = 0;
                for (int i = 0; i < 4 * a; i += 4)
                {
                    sum += double.Parse(al[i + 3].ToString());
                }
                Console.WriteLine("英语平均分是:{0}", sum / a);
    复制代码

    特殊集合:

    1.stack集合 

    也叫栈集合、干草堆集合 特点是先进后出 一个一个赋值 一个一个取值 按顺序

    添加元素:.push();

    弹出元素:.pop();弹出最后一个 并且弹出后 集合内不再有此元素

    查看元素:.peek();只查看 不弹出

    2.队列集合

    queue 特点是先进先出 一个一个赋值 一个一个取值

    添加元素:.enqueue();

    移除一个元素:.dequeue();从头开始移除

    3.哈希表集合

    hashtable  哈希表 先进后出 一个一个赋值 但只能一起取值

    添加元素:.add(,);一次添加两个元素 一个是key 一个是value。

  • 相关阅读:
    PO、POJO、BO、DTO、VO区别与总结
    redis缓存策略
    redis key/value 出现乱码\xAC\xED\x00\x05t\x00\x05
    Maven中的GroupID和ArtifactID和name指的是什么?
    为什么不应该加班?
    IDEA 激活
    redis使用规范
    python 练习题 172. 阶乘后的零
    3.28 Niagara ROLLTHE
    3.31 ROLLTHE
  • 原文地址:https://www.cnblogs.com/lemon233-/p/6001780.html
Copyright © 2020-2023  润新知