C# Array 中的 Foreach 与 FindAll 方法.. 是两个很有用的语法糖. 语法糖 就是为了提高代码的可读性,及编写的效率的 你不使用它完成可以. 只是使用它的它会使你的代码更加清爽.
比如:以往我们要输出整个数组我们一般会用到foreach 遍输出:
foreach(string s in strArr)
{
Console.WriteLine(s);
}
而使用 语法糖.只需要一名代码就OK了:Array.ForEach(strArr,Console.WriteLine);
上代码,详细测试下这两个方法的使用:
View Code
1 using System; 2 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 string[] strArr = {"ztc","lxl","zqh","123","ztx"}; 8 9 /* 10 * Array.Foreach (泛型)方法是一个语法糖,主要是简化了我们使用foreach方法的 11 * 遍历操作. 12 * 我们这里是以Array来做测试,第一个参数是一个数组,第二个参数是我们要对其 13 * 进行的操作的方法. 可以直接使用方法名称,还可以使用Lambda表达示,这个的方法 14 * 这里使用的代理是Action 返回值为Void. 15 */ 16 Array.ForEach<string>(strArr,Console.WriteLine); //Action 使用方法名 17 Array.ForEach<string>(strArr,s => Console.WriteLine("** "+s+" **")); //Action 使用Lambda表达式 18 19 //声明一个临时 String 数组. 20 string[] tmpArr; 21 22 /* 23 * 使用Array.FindAll方法,可以实现 数组的解析 24 * 把数组中符合一定条件的元素提出来组成一个新的数组 25 * 非常的实用,FindAll使用的代理是 Predicte 需要返回 Bool 型的方法 26 */ 27 tmpArr = Array.FindAll(strArr,s => s.StartsWith("z")); //Lambda表达式 28 //同样使用Array.ForEach 方法把数组元素输出 29 Array.ForEach(tmpArr,Console.WriteLine); 30 31 //Array.ForEach 方法可以不使用泛型的写法, 32 //它会自动根据你提拱的数组类型来设置类型. 33 Array.ForEach(new int[] {1,2,3},Console.WriteLine); 34 } 35 }
输出结果:
|
请发表评论