• C#基础入门 九


    C#基础入门 九

    集合

    • 对于很多应用程序,需要创建和管理相关对象组,有两种方式可以将对象分组,一是创建对象数组,如
    object[] obj=new object[3]{1,2.33,"string"};
    foreach(object o in obj)
    {
    	Console.WriteLine(o.Tostring());
    	//output:1 2.33 string
    }
    
    • 但是这样实现有一个缺点,数组的初始化必须要固定数量,即数组的长度一定是常量。所以需要集合。

    • 创建和管理相关对象组的第二种方式就是创建对象集合。集合提供一种灵活的处理方式,与数组不同,处理的对象组可根据程序更改的需要动态的增长和收缩,对于某些集合,您可以为放入该集合的任何对象分配一个“键”,以便使用该键快速检索对象。

    • 集合是类,因此必须声明新集合后,才能向该集合中添加元素。

    • 集合分为两种类型:非泛型集合和泛型集合

      • 使用非泛型集合需要引入:System.Collections命名空间
      • 使用泛型集合需要引入:System.Collections.Generic命名空间
    • System.Collections命名空间下的集合类

    • System.Collections.Generic命名空间下的集合类(图15)

    Dictionary

    • Dictionary<TKey,TValue>称为字典类,表示键和值的集合,其中TKey表示字典中的类型,TValue表示字典中的值类型,Dictionary类实现了ICollection、IEnumerable、IDictionary接口,定义如下:Dictionary<string,int> dic =new Dictionary<string,int>();

    • Dictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值) ,键必须是唯一的,而值不需要唯一的 ,键和值都可以是任何类型(比如:string, int, 自定义类型,等等) ;通过一个键读取一个值的时间是接近O(1) ,键值对之间的偏序可以不定义。

    • Dictionary类成员介绍:(图16)

    • Dictionary具体用法

    public static void Main(string[] args)
            {
                Dictionary<string, int> dic = new Dictionary<string, int>();
                dic.Add("zxh",21);
                Dictionary<string, string> dic1 = new Dictionary<string, string>();
                dic1.Add("张三", "李四");
                int n;
                bool b=dic.TryGetValue("zxh", out n);
                Console.WriteLine(n);
                // bool b1 = dic.Remove("zxh");
                // Console.WriteLine(b1);
                //遍历key
                foreach (string key in dic.Keys)
                {
                    Console.WriteLine("Key = {0}", key);
                }
                //遍历value
                foreach (int value in dic.Values)
                {
                    Console.WriteLine("value = {0}", value);
                }
                //遍历字典
                foreach (KeyValuePair<string, int> kvp in dic)
                {
                    Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
                }
            }
    
    • 运行如下图所示(图17)
  • 相关阅读:
    C# 2010 从入门到精通 学习笔记3 第4章 使用决策语句
    C# 2010 从入门到精通 学习笔记2 第3章 方法和作用域
    C# 2010 从入门到精通 学习笔记1 第2章 使用变量、操作符和表达式
    SharePoint 2010 添加“我的链接”菜单
    SharePoint Survey WebPart 调查 Web部件
    SharePoint World Clock 世界时钟
    SharePoint Silverlight Clock 时钟
    SharePoint 文档导入工具
    如何在SharePoint2010中添加Deep Zoom Image
    计算并发和qps:
  • 原文地址:https://www.cnblogs.com/senlinmilelu/p/8450203.html
Copyright © 2020-2023  润新知