说说C#中Dictionary的用法
先看一个实例:
private Dictionary<string, string> needfirstReplaces = new Dictionary<string, string>()
{
{"one","onemail"},
{"two","twomail"},
{"three","threemail"},
{"four","fourmail"}
};
protected virtual Dictionary<string, string> firstReplaces
{
get
{
Dictionary<string, string> Replaces = new Dictionary<string, string>(){ };
return Replaces;
}
}
private DataTable ReplaceCloumnString(DataTable dtFormatedData, List<string> ReplaceColumn)
{
Dictionary<string, string> newfirstReplaces = new Dictionary<string, string>();
newfirstReplaces = needfirstReplaces;
foreach (KeyValuePair<string, string> newitem in firstReplaces)
{
if (!newfirstReplaces.ContainsKey(newitem.Key))
{
newfirstReplaces.Add(newitem.Key, newitem.Value);
}
}
DataTable dtFormatedDataCopy = dtFormatedData.Clone();
foreach (DataRow dr in dtFormatedData.Rows)
{
foreach (KeyValuePair<string, string> item in newfirstReplaces)
{
foreach (string needColumn in ReplaceColumn)
{
if (dr[needColumn].ToString().Contains(item.Key))
{
string ContentStr = dr[needColumn].ToString();
dr[needColumn] = ReplaceStr(ContentStr, item.Key, item.Value);
}
}
}
DataRow drNewRow = dtFormatedDataCopy.NewRow();
drNewRow.ItemArray = dr.ItemArray;
dtFormatedDataCopy.Rows.Add(drNewRow);
}
return dtFormatedDataCopy;
}
Dictionary<string, string>是一个泛型 他本身有集合的功能有时候可以把它看成数组, 他的结构是这样的:Dictionary<[key], [value]> ,
他的特点是存入对象是需要与[key]值一一对应的存入该泛型, 通过某一个一定的[key]去找到对应的值,[key] 不能重复,它的单个数组是KeyValuePair<key, value>,[value]可以是string,int 和一个类等等.
也可以用linq来操作如:
var result = from pair in newfirstReplaces orderby pair.Key select pair;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架