跳到主要内容

C# 方法

提示
  1. 方法的概念和作用:方法是执行特定任务的代码块,有助于将复杂问题分解成更小、更易于理解和重用的部分。例如,可以创建不同的方法来绘制圆和给圆上色。
  2. 方法的声明和调用:在C#中,方法以 returnType methodName() 的形式声明,并包含一个方法体。调用方法时,只需使用其名称,如 display()。返回类型指定了方法返回的值类型,如 void 表示无返回值。
  3. 方法的参数和重载:方法可以接受参数,例如 int addNumber(int a, int b),并且可以重载,即创建多个具有相同名称但参数不同的方法。这增加了方法的灵活性和代码的可读性。

方法是执行特定任务的代码块。假设你需要创建一个程序来绘制一个圆并给它上色。你可以创建两个方法来解决这个问题:

  • 一个用于绘制圆的方法
  • 一个用于给圆上色的方法

将复杂问题分解成更小的部分可以使你的程序更易于理解和重用。

在 C# 中声明方法

以下是在 C# 中声明方法的语法。

returnType methodName() {
// 方法体
}

这里,

  • returnType - 它指定方法返回的值类型。例如,如果一个方法的返回类型是 int,那么它返回一个 int 值。

如果方法不返回值,其返回类型是 void

  • methodName - 它是用于在程序中引用特定方法的标识符。

  • method body - 它包含用于执行某些任务的编程语句。方法体被包含在大括号 { }

让我们看一个例子,

void display() {
// 代码
}

这里,方法的名称是 display()。返回类型是 void

在 C# 中调用方法

在上面的例子中,我们声明了一个名为 display() 的方法。现在,要使用该方法,我们需要调用它。

以下是我们如何调用 display() 方法的方式。

// 调用方法
display();

C# 方法调用的工作原理

示例:C# 方法

using System;

namespace Method {

class Program {

// 方法声明
public void display() {
Console.WriteLine("Hello World");
}

static void Main(string[] args) {

// 创建类对象
Program p1 = new Program();

// 调用方法
p1.display();

Console.ReadLine();

}
}
}

输出

Hello World

在上面的例子中,我们创建了一个名为 display() 的方法。我们创建了一个 Program 类的对象 p1

注意这行代码,

p1.display();

这里,我们正在使用对象来调用 display() 方法。

C# 方法返回类型

C# 方法可能返回值,也可能不返回值。如果方法不返回任何值,我们使用 void 关键字(如上例所示)。

如果方法返回任何值,我们使用 return 语句返回任何值。例如,

int addNumbers() {
...
return sum;
}

这里,我们正在返回变量 sum。你应该始终记住的一件事是,方法的返回类型和返回值的类型应该是相同的。

在我们的代码中,返回类型是 int。因此,sum 的数据类型也应该是 int

示例:方法返回类型

using System;

namespace Method {

class Program {

// 方法声明
static int addNumbers() {
int sum = 5 + 14;
return sum;

}

static void Main(string[] args) {

// 调用方法
int sum = addNumbers();

Console.WriteLine(sum);

Console.ReadLine();

}
}
}

输出

19

在上述示例中,我们有一个名为 addNumbers() 的方法,其返回类型为 int

int sum = addNumbers();

这里,我们将 addNumbers() 方法返回的值存储到 sum 变量中。我们使用 int 数据类型来存储值,因为方法返回的是 int 类型的值。

注意:由于方法是静态的,我们在调用方法之前不需要创建类对象。静态方法属于类而不是类的对象。

C# 方法参数

在 C# 中,我们也可以创建一个接受某些值的方法。这些值称为方法参数。例如,

int addNumber(int a, int b) {
// 代码
}

这里,ab 是传递给 addNumber() 函数的两个参数。

如果创建了带参数的方法,我们需要在调用方法时传递相应的值(参数)。例如,

// 调用方法
addNumber(100, 100);

C# 方法返回值的表示

这里,我们传递了 2 个参数 (100, 100)

示例 1:带参数的 C# 方法

using System;

namespace Method {

class Program {
int addNumber (int a, int b) {

int sum = a + b;

return sum;

}

static void Main(string[] args) {

// 创建类对象
Program p1 = new Program();

// 调用方法
int sum = p1.addNumber(100,100);

Console.WriteLine("和: " + sum);

Console.ReadLine();

}
}
}

输出

和: 200

带单个参数的 C# 方法

在 C# 中,我们也可以创建带有单个参数的方法。例如,

using System;

namespace Method {

class Program {

string work(string work) {
return work;

}

static void Main(string[] args) {

// 创建类对象
Program p1 = new Program();

// 调用方法
string work = p1.work("清洁"); ;

Console.WriteLine("工作: " + work);

Console.ReadLine();

}
}
}

输出

工作: 清洁

在这里,work() 方法有一个单独的参数 work

内置方法

到目前为止,我们定义了我们自己的方法。这些被称为 用户定义的方法

然而,在 C# 中,有许多可以直接在我们的程序中使用的方法。它们被称为 内置方法。例如,

  • Sqrt() - 计算一个数的平方根
  • ToUpper() - 将字符串转换为大写

示例:Math.Sqrt() 方法

using System;

namespace Method {

class Program {
static void Main(string[] args) {

// 内置方法
double a = Math.Sqrt(9);
Console.WriteLine("9 的平方根: " + a);
}
}
}

输出

9 的平方根: 3

在上面的程序中,我们使用了

double a = Math.Sqrt(9);

来计算 9 的平方根。这里,Sqrt() 是一个内置方法,它定义在 Math 类中。

我们可以在程序中直接使用内置方法,而无需编写方法定义。要了解更多,请访问 C# 内置方法

C# 中的方法重载

在 C# 中,我们可以创建两个或更多具有相同名称的方法。这被称为方法重载。例如,

using System;

namespace MethodOverload {

class Program {

// 带有一个参数的方法
void display(int a) {
Console.WriteLine("参数: " + a);
}

// 带有两个参数的方法
void display(int a, int b) {
Console.WriteLine("参数: " + a + " 和 " + b);
}
static void Main(string[] args) {

Program p1 = new Program();
p1.display(100);
p1.display(100, 200);
Console.ReadLine();
}
}
}

输出

参数: 100
参数: 100200

在上述例子中,我们重载了 display() 方法。这是可能的,因为:

  • 一个方法有一个参数
  • 另一个有两个参数

要了解更多,请访问 C# 方法重载