代码结构的组成
代码结构简单的讲,就是程序某段代码的组成元素,一般来讲是由程序指令和数据结构组成;
程序指令
程序指令很简单就是循环(foreach/while/for等)、运算(+/-/*/%)、逻辑(>/=/<)等关键字;
数据结构
数据结构就是变量、值的存储和使用结构,例如:var a = “a”;var set = new string[]{a};
数据结构的重要性
例如:var testDt = new DataTable();
A | B |
---|---|
a | 1 |
b | 1 |
b | 2 |
c | 1 |
c | 2 |
c | 3 |
var testSet = new string[]{“a”,“b”,“c”};
问题:需要找到列A中testSet中值对应的列B的值进行计算或者使用
一般思路:循环testSet中的值,在testDt中循环行找列A中对应testSet值的列B值
代码:
foreach(var item in testSet)
{
var set = from dr in testDt.Select() where dr["A"] == item select dr["B"].ToString();
//....使用set
}
说明:testSet中的元素每次testDt的行都要循环一次;
字典思路:将testDt中的A列和B列使用字典数据结构进行存储,testSet元素使用
代码:
var dic = new Dictinary<string,List<string>>();
foreach(var dr in testDt.Select())
{
if(dic.ContainsKey(dr["A"].ToString()))
{
dic[dr["A"].ToString()].Add(dr["B"].ToString());
}
else
{
dic.Add(dr["A"].ToString(),new List<string>(){dr["B"].ToString()});
}
}
//..使用字典即可提升效率(大数据时效率有明显差异)
说明:只循环一次testDt中的行,然后使用字典进行
总结
代码结构非常重要,而数据结构是优秀代码结构的重中之重,有些性能问题,无法用技术实现的我们可以考虑使用代码结构、数据结构来提升;