第三章 方法和作用域
1.使用表达式主体方法
有的方法十分简单,就是执行单一任务或返回计算结果,不涉及任何额外的逻辑。如:
int add(int first, int second)
{
return first + second;
}
C#允许以一种简化的形式写由单个表达式构成的方法。=>操作符的右侧为方法的主体部分,方法的主题被简化成表达式,没有return语句,表达式的值自动作为返回值
int add(int first,int second) => first + second;
如果表达式不返回值,则为void方法。
void showResult(string result) => Console.WriteLine($"Result: {result}");
表达式主体方法和普通方法在功能上实际并无区别,只是语法简化了。类似这样的设计称为语法糖。
2.使用元组
若想要方法调用一次返回两个值,使用元组。需要安装ValueTuple扩展包,工具->NuGet包管理器->管理解决方案的...
(int, int)return2Values(int first, int second)
{
return (first +10, second +10);
}
3.使用作用域
类定义的变量称为字段。方法内部定义的变量为局部变量。字段可在类中的不同方法内使用。
Class Pet
{
void Cat()
{
int weight = 4;
myPetsCount = 3;
}
void Dog()
{
myPetsCount = 4;
}
int myPetsCount = 0;
}
4.重载方法
两个标识符同名,而且在同一个作用域中声明,就说它们被重载。以Console类的WriteLine为例:
Console.WriteLine("Hello");
Console.WriteLine(23);
5.使用可选参数和具名参数
可选参数有默认值,不传入实参则使用默认值。
public double Calculate(int first, double second = 0.0, int third = 100)
{
...
}
public double Calculate(int first, double second = 1.0)
{
...
}
Calculate(1, double: 2.0); //调用最匹配的方法:public double Calculate(int first, double second = 1.0){...}
Calculate(1);//有歧义,编译错误

浙公网安备 33010602011771号