• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
疯丫头0805
博客园    首页    新随笔    联系   管理    订阅  订阅
5月11日 ArrayList集合复习、特殊集合、枚举类型
一、ArrayList集合复习
            //定义
            ArrayList al = new ArrayList();
            //添加元素
            al.Add(2);
            //插入元素
            al.Insert(1,3);
            //查看个数
            int a = al.Count;//count数数的意思
            //清空集合
            al.Clear();
            //克隆一个集合
            al.Clone();
            //判断是否包含一个值
            bool b = al.Contains("2");
            //查看3第一个出现的索引号
            int c = al.IndexOf(3);
            //查看3最后一个出现的索引号
            int d = al.LastIndexOf(3);
            //移除3这个数据
            al.Remove(3);
            //移除索引号为3的数据
            al.RemoveAt(3);
            //排序,自动按照升序排列
            al.Sort();
            //翻转集合,即按照降序排列
            al.Reverse();
二、特殊集合
//
stack集合 干草堆 栈集合 //先进后出 一个一个的取值 一个一个的赋值 //定义方式 //Stack aa = new Stack(); ////向集合内推送元素 //aa.Push(1); //aa.Push(2); //aa.Push(3); //aa.Push(4); //aa.Push(5); ////POP 只要元素被弹出,集合中就没有了 ////Console.Write(aa.Pop()); ////Peek() 只是拿出来看看,并不进行移除 //Console.WriteLine(aa.Peek()); ////清空集合 //aa.Clear(); ////克隆 //Stack bb = new Stack(); //bb=(Stack)aa.Clone(); ////遍历集合 正着推进去,倒着打印出来 //foreach (object aaa in aa) //{ // Console.WriteLine(aaa); //} //Queue 队列集合 //先进先出 一个一个赋值 一个一个取值 //定义方式 //Queue que = new Queue(); //添加数据 //que.Enqueue(1); //que.Enqueue(2); //que.Enqueue(3); //que.Enqueue(4); //que.Enqueue(5); //移除一个数据 //Console.WriteLine(que.Dequeue()); //Peek() 把数据拿出来看一下 //Console.WriteLine(que.Peek()); //遍历集合 //foreach (object aa in que) //{ // Console.WriteLine(aa); //} //Hashtable 哈希表 //先进后出,一个一个赋值,但是只能一起取值, Hashtable ht = new Hashtable(); ht.Add(0, "张三"); ht.Add(1, "李四"); ht.Add(2, "王五"); ht.Add(3, "赵六"); ht.Add(4, "冯七"); //移除某个Key值以及value值 //ht.Remove(2); //判断是否包含 //Console.WriteLine(ht.Contains(2)); //遍历集合 //类似于Stack集合,倒序打印 foreach (int i in ht.Keys) { Console.WriteLine(i); } foreach (string s in ht.Values) { Console.WriteLine(s); }
三、枚举类型
//
利用枚举类型读取集合中的所有数据,像表格一样排列 //IDictionaryEnumerator id = ht.GetEnumerator();//获取到里面的每一个Key值以及value值,需要进行循环打印 //while (id.MoveNext())//移动到下一个key与value值 //{ // Console.WriteLine(id.Key + "\t" + id.Value); //}
四、练习:
//
输入班级人数,根据人数创建Array集合,先存人名,紧跟着分数 //打印出来,像表格一样,前面是人名,后面是成绩 Console.Write("请输入班级人数:"); ArrayList al=new ArrayList(); int n=int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { Console.Write("请输入"+(i+1)+"个人的姓名:"); string xm = (Console.ReadLine()); al.Add (xm);//意思是把输入的元素储存到集合里面 Console.Write("请输入"+(i+1)+"个分数:"); double fenshu = double.Parse(Console.ReadLine()); al.Add (fenshu); } Console.WriteLine("姓名"+"\t"+"分数"); //因为在前面真正是输入了双倍的元素2*n,所以这里i<2*n,后面的i+=2意思是一行两个因素,下一行是第三第四个因素,所以是i=i+2 for (int i = 0; i < n*2; i+=2) { Console.WriteLine(al[i]+"\t"+al[i+1]); } Console.ReadLine();

 

posted on 2016-05-13 17:39  疯丫头0805  阅读(202)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3