第三章 方法和作用域

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);//有歧义,编译错误



posted @ 2021-02-06 06:41  葡式蛋挞  阅读(12)  评论(0)    收藏  举报