利用哈希表实现实体类索引

本文介绍了一个C#实现的客户管理_股权结构Info类,该类通过继承CollectionBase并使用Dictionary来实现属性与哈希表的结合使用。文章展示了如何通过属性设置值的同时写入哈希表,并提供了实例演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


//必须继承CollectionBase才能使用哈希对象
    public class 客户管理_股权结构Info:CollectionBase
{
private string_出资形式;
        public string 出资形式
        {
            get{ return this._出资形式; }
            //利用属性set写入HASH
            set{ this._出资形式= value; Hash.Add("出资形式", value); }
     }
 
//声明一个Hash对象
        private Dictionary<string, object>_Hash = new Dictionary<string, object>();
        public Dictionary<string, object>Hash
        {
            get { return _Hash; }
            set { _Hash = value; }
        }
        //建立类的索引读写Hash表
        public object this[string key]
        {
            get{ return (object)Hash[key]; }
            set { Hash.Add(key, value);}   
        }
}


 

我们实例化这个实体类后,就可以直接对它使用索引读写了

 

客户管理_股权结构Info 客户管理_股权结构Info = new 客户管理_股权结构Info();
客户管理_股权结构Info.出资形式 = "ok!!!!!!!!!!!!!!!!!!!111111111";
Console.WriteLine(客户管理_股权结构Info["出资形式"]);


 

不过请注意:用对象属性写入的使用索引、属性都可以读出,但是利用索引写入的,只能使用索引读出,不能用属性读出,因为索引写入时只执行了哈希表写入,要实现写入哈希表同时写入属性就需要对对象属性进行遍历,匹配适合的属性再写入,这样程序的执行效率就低了。因此这里我们只实现了属性写入,索引读出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值