">
当前位置:   article > 正文

【C#/Unity】C#脚本中 =>符号是什么意思?_c# =>

c# =>

目录

  • 快速入门
  • lambda运算符使用场景
      • 过滤集合
      • 转换集合
      • 排序集合
      • 定义委托或事件处理程序
      • 异步编程
  • 其他常见运算符使用场景
      • 赋值运算符(=)
      • 算术运算符(+,-,*,/,%)
      • 比较运算符(==,!=,<,>,<=,>=)
      • 逻辑运算符(&&,||,!)
      • 条件运算符(?:)
      • null条件运算符(?.)

快速入门

C#中,=>符号是"lambda运算符",用于定义lambda表达式。

Lambda表达式是一种简洁的匿名函数表示方式,它可以包含表达式和语句,并且可以用于创建委托或表达式树类型。

  • 假设有一个整数列表,想要找到其中的偶数。我们可以使用lambda表达式来完成这个任务:
// 使用lambda表达式找到偶数
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// evenNumbers现在包含2, 4, 6, 8, 10
List<int> evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
  • 1
  • 2
  • 3
  • 4
  • 其中,n => n % 2 == 0就是一个lambda表达式。n是输入参数(在这个例子中是列表中的每个元素),n % 2 == 0是函数体,它检查数字是否是偶数。

  • 我们也可以使用lambda表达式来定义更复杂的函数,例如:

Func<int, int, int> add = (a, b) => a + b;
// sum = 7
int sum = add(3, 4);  
  • 1
  • 2
  • 3
  • 其中,(a, b) => a + b是一个lambda表达式,返回两个输入参数ab的和。

总的来说,=>符号在C#中用于定义简洁且强大的函数,它们可以用于各种场景,包括处理集合、定义简单的函数或者作为其他函数的参数。


lambda运算符使用场景

在C#中,lambda表达式主要就是使用=>来运算符完成的。常见使用场景如下:

过滤集合

  • 使用lambda表达式过滤集合中的元素。例如,查找一个整数列表中的所有偶数:

    List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
    List<int> evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
    
    • 1
    • 2

转换集合

  • 使用lambda表达式来转换集合中的元素。例如,将一个整数列表中的所有元素都乘以2:

    List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
    List<int> doubled = numbers.Select(n => n * 2).ToList();
    
    • 1
    • 2

排序集合

  • 使用lambda表达式来对集合进行排序。例如,按照长度对一个字符串列表进行排序:

    List<string> words = new List<string> { "apple", "banana", "cherry" };
    List<string> sorted = words.OrderBy(w => w.Length).ToList();
    
    • 1
    • 2

定义委托或事件处理程序

  • 使用lambda表达式来定义委托或事件处理程序。例如,定义一个委托来计算两个整数的和:

    Func<int, int, int> add = (a, b) => a + b;
    int sum = add(3, 4);  // sum现在是7
    
    • 1
    • 2

异步编程

  • 使用lambda表达式来定义异步任务。例如,定义一个异步任务来模拟一个耗时的操作:

    Task.Run(() => {
        // 模拟一个耗时的操作
        Thread.Sleep(1000);
        Console.WriteLine("Operation completed");
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5

其他常见运算符使用场景

以下是一些常见的C#运算符及其用途:

赋值运算符(=)

  • 用于将值赋给变量。

    int a = 5;
    
    • 1

算术运算符(+,-,*,/,%)

  • 用于执行基本的数学运算。

    int sum = 3 + 2;  // sum = 5
    int difference = 3 - 2;  // difference = 1
    int product = 3 * 2;  // product = 6
    int quotient = 3 / 2;  // quotient = 1
    int remainder = 3 % 2;  // remainder = 1
    
    • 1
    • 2
    • 3
    • 4
    • 5

比较运算符(==,!=,<,>,<=,>=)

  • 用于比较两个值。

    bool isEqual = (3 == 2);  // isEqual = false
    bool isNotEqual = (3 != 2);  // isNotEqual = true
    bool isLessThan = (3 < 2);  // isLessThan = false
    bool isGreaterThan = (3 > 2);  // isGreaterThan= = true
    bool isLessThanOrEqual = (3 <= 2);  // isLessThanOrEqual = false
    bool isGreaterThanOrEqual = (3 >= 2);  // isGreaterThanOrEqual = true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

逻辑运算符(&&,||,!)

  • 用于执行逻辑运算。

    bool bothAreTrue = (true && true);  // bothAreTrue = true
    bool eitherIsTrue = (true || false);  // eitherIsTrue = true
    bool isNotTrue = !true;  // isNotTrue = false
    
    • 1
    • 2
    • 3

条件运算符(?:)

  • 用于执行条件运算。

    int a = 5;
    int b = 3;
    int max = (a > b) ? a : b;  // max = 5
    
    • 1
    • 2
    • 3

null条件运算符(?.)

  • 用于在引用或类型为null的情况下避免抛出异常。

    string name = null;
    int? length = name?.Length;  // length = null,而不是抛出异常
    
    • 1
    • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/115669
推荐阅读
相关标签
  

闽ICP备14008679号