首页 新闻 会员 周边

想写个扩展方法,不太会请教一下

0
悬赏园豆:20 [已解决问题] 解决于 2008-08-16 09:46
<P>List&lt;string&gt; a=new List&lt;string&gt;();</P> <P>a.Add("1");</P> <P>a.Add("2");</P> <P>现在想对list中的每个元素除2,使用foreach好像不会返回值啊,</P> <P>大概感觉是使用IEnumerator写个扩展方法,但是动手又不会写了,高手帮忙</P>
lexus的主页 lexus | 初学一级 | 园豆:0
提问于:2008-08-15 23:46
< >
分享
最佳答案
0
public static IEnumerable<T> Map<T, U>(this IEnumerable<U> source, Func<U,T> mapping) { foreach(var s in source) yield return mapping(s); } List<string> a=new List<string>(); a.Add("1"); a.Add("2"); var b = a.Map(x=> int.Parse(x) /2).ToList();
deerchao | 大侠五级 |园豆:8367 | 2008-08-16 01:59
其他回答(1)
0
public static IEnumerable<string> DivideByTwo(this IEnumerable<string> list) { List<string> returnValue = new List<string>(); foreach (string s in list) { returnValue.Add((Convert.ToInt32(s) / 2).ToString()); } return returnValue; } 字符串除以2还真奇怪…… 调用: List<string> ss = new List<string>(); ss.Add("1"); ss.Add("2"); ss = ss.DivideByTwo();
Gray Zhang | 园豆:17610 (专家六级) | 2008-08-16 01:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册