C#关联容器键值的更改

以dictionary关联容器为例,当对容器内容采用foreach遍历时不能直接更改键值的内容,这是由关联容器的机制所决定的。关联容器不允许在遍历的时候直接更改键值,因为这样做将导致容器本身内容改变,从而导致继续遍历出错。那么该如何更改关联容器的键值呢,下面推荐两种方法:

dictionary<Type1,Type2> dic = new dictionary<Type1,Type2>();

1.通过dictionary.Keys.ToArray()方法

Type1[] keyStr = dic.Keys.ToArray<Type1>();

for(int i = 0; i < ketStr.Length; i++)

{

     dic[keyStr[i]]=......

}

2.通过dictionary.Keys.CopyTo()方法

Type1[] strKey = New Type1[dic.Keys.Count];

dic.Keys.CopyTo(strKey,0);

for(int j = 0; j < kstrKey.Length; j ++)

{

     dic.ContainsKey(strKey[i])=......

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值