当前位置: 首页 > news >正文

学习在 C# 中使用 Lambda 运算符

在 C# 中,lambda 运算符 => 同时用于 lambda 表达式和表达式体成员。

1. Lambda 表达式

Lambda 表达式是一种简洁的表示匿名方法(没有名称的方法)的方法。它使用 lambda 运算符 =>,可以读作“转到”。运算符的左侧指定输入参数(如果有),右侧包含表达式或语句块。

以下是一个例子,

using System;
class Program
{static void Main(){Func<int, int> square = x => x * x;int number = 5;int result = square(number);Console.WriteLine($"The square of {number} is {result}");}
}

2. 表达式体成员

表达式体成员是使用 lambda 语法定义方法、属性、索引器或事件访问器的语法快捷方式。它们还使用 lambda 运算符 =>:

表达式体方法

public class MathOperations
{public int Add(int a, int b) => a + b;public int Multiply(int a, int b) => a * b;
}

在此示例中,Add 和 Multiply 是表达式体方法。它们以两个整数作为参数,分别返回和与乘积。

表达式体属性

public class Circle
{public double Radius { get; set; }public double Circumference => 2 * Math.PI * Radius;public double Area => Math.PI * Radius * Radius;
}

在此示例中,Circumference 和 Area 是表达式体属性。它们分别计算圆的周长和面积。

表达式体索引器

public class SimpleIndexer
{private readonly int[] _array = new int[10];public int this[int i]{get => _array[i];set => _array[i] = value;}
}

在此示例中,索引器是一个表达式体成员。它获取或设置指定索引处元素的值。

表达式体构造函数和终结器

public class Person
{private string _name;public Person(string name) => _name = name ?? throw new ArgumentNullException(nameof(name));~Person() => Console.WriteLine($"Finalizing {_name}");
}

在此示例中,构造函数和终结器都是表达式体成员。构造函数初始化 _name,如果 name 为 null,则抛出异常。终结器在对象被终结时向控制台写入一条消息。

http://www.lryc.cn/news/389779.html

相关文章:

  • 数据结构和算法,单链表的实现(kotlin版)
  • Jdk17是否有可能代替 Jdk8
  • oca和 ocp有什么区别
  • 煤矿安全大模型:微调internlm2模型实现针对煤矿事故和煤矿安全知识的智能问答
  • C++中的C++中的虚析构函数的作用和重要性
  • 机器学习 - 文本特征处理之 TF 和 IDF
  • 因为自己淋过雨所以想给嵌入式撑把伞
  • 《C++20设计模式》中单例模式
  • 前端技术(说明篇)
  • 带电池监控功能的恒流直流负载组
  • 关于Disruptor监听策略
  • 大数据面试题之HBase(3)
  • c#中赋值、浅拷贝和深拷贝
  • 旧版st7789屏幕模块 没有CS引脚的天坑 已解决!!!
  • 激光粒度分析仪校准步骤详解:提升测量精度的秘诀
  • 独一无二的设计模式——单例模式(python实现)
  • 第二证券:可转债基础知识?想玩可转债一定要搞懂的交易规则!
  • 原型模式的实现
  • 【第二套】华为 2024 年校招-硬件电源岗
  • Xilinx FPGA:vivado利用单端RAM/串口传输数据实现自定义私有协议
  • Spark on k8s 源码解析执行流程
  • 粤港联动,北斗高质量国际化发展的重要机遇
  • Chrome导出cookie的实战教程
  • 视频文字转语音经验笔记
  • 视频融合共享平台LntonCVS统一视频接入平台智慧安防应用方案
  • 使用Python绘制动态螺旋线:旋转动画效果
  • Symfony实战手册:PHP框架的高级应用技巧
  • TOGAF培训什么内容?参加TOGAF培训有什么好处?考试通过率多少?
  • keepalived HA nginx方案
  • 报错:pathspec ‘xxx‘ did not match any file(s) known to git