iT邦幫忙

2021 iThome 鐵人賽

DAY 27
0
Software Development

C# 入门系列 第 27

C# 入门之函数(补充)

前面我们有讲过 C# 中的函数,今天我们补充一点。

在 C# 中,支持一种函数叫做 “匿名函数”,即将一个 “内联” 语句或表达式,可在需要委托类型的任何地方使用。

我们可以使用 lambda 表达式或匿名方法来创建匿名函数。 微软官方建议使用 lambda 表达式,因为它们提供了更简洁和富有表现力的方式来编写内联代码。所以,我们这里也就使用了 lambda 表达式。

下面我们来看一个简单的示例:

using System;

namespace ConsoleApp27
{
    class Program
    {
        static void Main(string[] args)
        {
            Action say = () => Console.WriteLine("Hello World.");
            say();
        }
    }
}

运行结果:

Hello World.

既然是作为函数,肯定要可以通过传参的方式:

using System;

namespace ConsoleApp27
{
    class Program
    {
        static void Main(string[] args)
        {
            Action<string> say = (s) => Console.WriteLine(s);
            say("Hello World.");
        }
    }
}

运行结果:

Hello World.

大家还记得我们前面的函数示例,创建一个函数,计算任意两个数的和,今天我们将尝试使用 lambda 表达式 的方式重写它。

下面我们来看看具体代码:

using System;

namespace ConsoleApp27
{
    class Program
    {
        static void Main(string[] args)
        {
            Func<int, int, int> sum = (x, y) => 
            {
                return x + y; 
            };
            Console.WriteLine("Please enter first number:");
            int firstNum = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Please enter second number:");
            int SecondNum = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine(sum(firstNum, SecondNum));
        }
    }
}

运行结果:

Please enter first number:
5
Please enter second number:
5
10

上一篇
C#入门之文本处理(补充)
下一篇
C# 入门之函数重载
系列文
C# 入门32

尚未有邦友留言

立即登入留言