c#中的扩展方法使用:
1.方法必须是形态的
2.方法必须包含一个参数,表示调用扩展方法的类实例(这个参数在这里称为实例参数)
3.实例码数是为方法定义的第一个参数,除了this关键字之外,实例参数不能有其他修饰符。
如下方法的定义:
public static String ToTitleCase(this String inputString, bool forcelower) {
inputString = inputString.Trim();
if (inputString == "") {
return "";
}
if (forcelower) {
inputString = inputString.ToLower();
}
String[] inputStringArray=inputString.Split(' ');
StringBuilder sb = new StringBuilder();
for (int i = 0; i < inputStringArray.Length;i++ )
{
if (inputStringArray[i].Length > 0) {
sb.Append(inputStringArray[i] = inputStringArray[i].Substring(0, 1).ToUpper() + inputStringArray[i].Substring(1));
sb.Append(" ");
}
}
return sb.ToString(); ;
}
}
λ表达示由3个部分组成:
1.放在括号中的参数列表(未类型化)
2.=>(运算符)
3.c#相关语句
实例如下:
myTimer.Elapsed+=(source,e)=>Cosole.WriteLine(" xxxxxx");
分享到:
相关推荐
自动属性是 Visual C# 5.0 之后新增的语法,与 Java 语言在类的内部中使用 GetXXX() 和 SetXXX() 方法进行数据的读取不同,微软官方的规范中推荐使用 C# 中的公有属性来封装私有数据字段,通过属性实现数据的读取。...
这个系统是类型理论的基础,对现代编程语言如Java、C#和Haskell中的泛型有着深远的影响。在Coq证明助手里实现系统F,我们可以利用Coq强大的形式化验证能力来研究和验证关于系统F的性质。 Coq是一种基于构造性类型...