我自己写的测试代码
string shijianjilv = "■";
string shijianjilvB = "□";
string aa = "aaa";
string bb = "bbb";
string cc = "ccc";
string dd = "ddd";
string ee = "eee";
string[] str1 = { aa, bb, cc, dd, ee };
string[] str2 = { "aaa", "ccc" }; foreach (string sb in str2)
{
if (aa == sb)
{
aa = aa + shijianjilv;
}
else if (bb == sb)
{ bb = bb + shijianjilv;
}
else if (cc == sb)
{
cc = cc + shijianjilv;
}
else if (dd == sb)
{
dd = dd + shijianjilv;
}
else if (ee == sb)
{
ee = ee + shijianjilv;
}
}
Response.Write(aa + "<br/>" + bb + "<br/>" + cc + "<br/>" + dd + "<br/>" + ee + "<br/>");输出结果是:
aa=aaa ■
bb=bbb
cc=ccc ■
dd=ddd
ee=eee
本人太菜了,这是我自己写了一段代码,怎么判断让结果等于
aa=aaa ■
bb=bbb □
cc=ccc ■
dd=ddd □
ee=eee □可要是变量有1000个或更多用这种方法就不行了。。
怎么写段就算有1000个变量也可以高效执行的代码啊。。
string shijianjilv = "■";
string shijianjilvB = "□";
string aa = "aaa";
string bb = "bbb";
string cc = "ccc";
string dd = "ddd";
string ee = "eee";
string[] str1 = { aa, bb, cc, dd, ee };
string[] str2 = { "aaa", "ccc" }; foreach (string sb in str2)
{
if (aa == sb)
{
aa = aa + shijianjilv;
}
else if (bb == sb)
{ bb = bb + shijianjilv;
}
else if (cc == sb)
{
cc = cc + shijianjilv;
}
else if (dd == sb)
{
dd = dd + shijianjilv;
}
else if (ee == sb)
{
ee = ee + shijianjilv;
}
}
Response.Write(aa + "<br/>" + bb + "<br/>" + cc + "<br/>" + dd + "<br/>" + ee + "<br/>");输出结果是:
aa=aaa ■
bb=bbb
cc=ccc ■
dd=ddd
ee=eee
本人太菜了,这是我自己写了一段代码,怎么判断让结果等于
aa=aaa ■
bb=bbb □
cc=ccc ■
dd=ddd □
ee=eee □可要是变量有1000个或更多用这种方法就不行了。。
怎么写段就算有1000个变量也可以高效执行的代码啊。。
string shijianjilvB = "□";
string aa = "aaa";
string bb = "bbb";
string cc = "ccc";
string dd = "ddd";
string ee = "eee";
string[] str1 = { aa, bb, cc, dd, ee };
string[] str2 = { "aaa", "ccc" }; str1 = str1.Select(x => str2.Where(y => x == y).Count > 0 ? x + " ■" : x + " □").ToArray();
,则变量值再后面加上■,如果不等于加上□
void Main()
{
string shijianjilv = "■";
string shijianjilvB = "□";
string aa = "aaa";
string bb = "bbb";
string cc = "ccc";
string dd = "ddd";
string ee = "eee";
string[] str1 = { aa, bb, cc, dd, ee };
string[] str2 = { "aaa", "ccc" }; var query=from s1 in str1
join s2 in str2
on s1 equals s2 into temp
from s in temp.DefaultIfEmpty()
select new
{
s1,
flag=s==null?shijianjilvB:shijianjilv
};
query.ToList().ForEach(q=>Console.WriteLine("{0}\t{1}",q.s1,q.flag));
/*
aaa ■
bbb □
ccc ■
ddd □
eee □
*/
}
{
str1[i] += Array.IndexOf(str2, str1[i]) > -1 ? shijianjilv : shijianjilvB;
}
Response.Write(string.Join("<br />", str1));
{
{ "aa", "aaa" },
{ "bb", "bbb" },
{ "cc", "ccc" },
{ "dd", "ddd" },
{ "ee","eee" }
};
string[] str2 = { "aaa", "ccc" };str1 = str1.Select(x => new {Key = x.Key, Value = str2.Contains(x.Value) ? x + " ■" : x + " □" }).ToDictionary(x => x.Key, y => y.Value);
{
{ "aa", "aaa" },
{ "bb", "bbb" },
{ "cc", "ccc" },
{ "dd", "ddd" },
{ "ee","eee" }
};
string[] str2 = { "aaa", "ccc" }; str1 = str1.Select(x => new { Key = x.Key, Value = str2.Contains(x.Value) ? x.Value + " ■" : x.Value + " □" }).ToDictionary(x => x.Key, y => y.Value);
string s = "";
str1.ToList().ForEach(x => { s += x.Key + "=" + x.Value + "<br />\r\n"; });
Response.WriteLine(s);
aa=aaa ■<br />
bb=bbb □<br />
cc=ccc ■<br />
dd=ddd □<br />
ee=eee □<br />
我太菜了,。555
Response.Write(s);
用字典保存变量名吧。http://topic.csdn.net/u/20110530/19/035239d0-7f11-41da-a6dd-aa6fff4497db.html你看你把加菲猫难住了。
你可以把word标签放到数组里,而不是把标签里的字符串放数组里
string bb = "bbb";
string cc = "ccc";
string dd = "ddd";
string ee = "eee";
Dictionary<string, string> str1 = new Dictionary<string, string>()
{
{ "aa", aa },
{ "bb", bb },
{ "cc", cc },
{ "dd", dd },
{ "ee", ee }
};
string[] str2 = { "aaa", "ccc" }; str1 = str1.Select(x => new { Key = x.Key, Value = str2.Contains(x.Value) ? x.Value + " ■" : x.Value + " □" }).ToDictionary(x => x.Key, y => y.Value);
aa = str1["aa"];
bb = str1["bb"];
cc = str1["cc"];
dd = str1["dd"];
ee = str1["ee"];
Response.Write(aa + "<br/>" + bb + "<br/>" + cc + "<br/>" + dd + "<br/>" + ee + "<br/>");看看这个你满意么?