c# - Hashtable

键值对集合(跟js中的对象类似)对象

创建 :

Hashtable 及使用 Add方法 向 Hashtable 添加键值对

namespace ConsoleApp6
{
    class Program
    {
        static void Main(string[] args)
        {
            Hashtable obj = new Hashtable();
            obj.Add("name", "lxc");
            obj.Add("age", 20);
            obj.Add(1, "test");
            obj.Add(true, "test1");
        }
    }
}

 键值对,可以是任何类型的参数。

 

 向Hashtable添加键值对方式:

Add()方法  或  等号赋值方式

// 使用Add()方法添加键值对时,键不可以重复,如果重复添加,会报错!
obj.Add("name", "lxc");
// 使用下边方式添加键值对,键可以重复,重复的键会被最后添加的覆盖掉
obj["age"] = 20;
obj["name"] = "xc";

// 最后 age -> 20; name -> "xc"

如何查看hashtable中的键值:

使用foreach循环

// 遍历数据集合键值对
// item是集合中的额每一项,
// 如果此时打印item,会输出 System.Collections.DictionaryEntry
// 这个是item对象所在的命名空间会被打印出来,但对于我们来说毫无用处
foreach(var item in HashtableValue)
{}
// 遍历数据集合中的键
// item是集合中的每一个键,此时可以用HashtableValue[item] 来获取每一个值
foreach(var item in HashtableValue.keys)
{}

namespace ConsoleApp6
{
    class Program
    {
        static void Main(string[] args)
        {
            Hashtable obj = new Hashtable();
            obj.Add("name", "lxc");
            obj.Add("age", 20);
            obj.Add(1, "test");
            obj.Add(true, "test1");
            // var 可以根据值来推断出值的类型
            // item: 每一项;obj:要循环的集合
            foreach (var item in obj.Keys)
            {
                getResult(item[item]);
            }
            Console.ReadLine();
        }
        public static void getResult(object param)
        {
            Console.WriteLine(param);
        }
    }
}

 输出:

数据集合Hashtable常用的方法:

(1)obj.Contains(object key) / obj.ContainsKey(object key)

上边两个用法一样,判断集合中是否包含某个键;

(2)obj.ContainsValue(object value)

判断集合中,是否包含某个值;

(3)obj.Clear()

删除集合中的所有元素;

(4)obj.Remove(object key)

根据键来移除集合中的某一项;

注意:

(1)在键值对结合中,键必须是惟一的, 但是值是可以重复的。

猜你喜欢

转载自blog.csdn.net/qq_42778001/article/details/109035573
今日推荐