事件,拷贝数组

本文介绍了在C#中使用事件与委托的基本概念,包括事件的定义、调用方式,以及如何在主程序中实现事件触发。此外,文章还详细解释了lambda表达式的使用方法,展示了不同类型的lambda表达式及其作用。最后,通过实例演示了数组的拷贝方法,包括直接赋值、使用`CopyTo`方法、foreach循环和Array类的拷贝方法,并对比了多维数组的赋值方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事件
在委托的基础上才有事件,
委托定义为private,事件的调用只能在定义事件的类的内部使用。

添加新建项目
EeventDemo
添加类
TemperatureMonitor
{
public delegate void StopMachineryDelegate();
public enent StopMachineryDelegate MachineOverheating;//事件定义为public

private void Notify()
{
if(this.)
}
}
在主程序里赋值main
{
 TemperatureMonitor tempMonitor=new TemperatureMonitor();
 WeldingMachine welder=new  WeldingMachine();
PaintingMachine painter=new PaintingMachine();

tempMonitor.Notify();//事件的调用只能在定义事件的类的内部使用。
Console.ReaKey();
}

lambda=>表达式
一共典型的方法包括:返回类型、方法名、参数列表、方法体。
controller.Add(()=>{newPainer.PaintOff()};);
():表示参数类表无参数
=>:该运算符告诉编译器,此表达式为lambda
{newPainer.PaintOff()};:表示方法体

拷贝数组
main
{
方法一:
int[]pins={9,4,7,2};
int[] alins=pins;

for(int i=0;i<pins.Length;i++)
{
alins[i]=pins[i];

}
方法二:
int[]pins={9,4,7,2};
int[]copy=new int[pins.Length];
pins.CopyTo(copy,0);
方法三:
int[]pins={9,4,7,2};
foreach(int temp in copy)
{
Console.WriteLine(temp);
}

方法四:
int[]pins={9,4,7,2};
int[]copy=new int[3];

Array.copy(pins,copy,copy.length);
Console.ReaKey();

int[] copy=(int[])pins.Clone();
}

多维数组:
int[,] items=new int[2,3];
给二维数组赋值:
items[0,1]=6;
items[1,1]=9;
items[1,2]++;//将数组自加、

什么是集合:
stack(站)    heap(堆)
数组是把数组名存在站里、数组值存在堆里

object[] arr={   }
常见的有:ArraList(集合列表类型的)
ArraList nubers=new ArraList();


调用一个方法:
main
{
ArraListText();
}


static void ArraListText()
{
ArraList nubers=new ArraList();
foreach(int temp in new inr[7]{1,2,3,4,5,6,7})
{
numbers.Add(number);
}
numbers.Insert(6,99999999);//插入
foreach(int temp int numbers)
{
Console.WriteLine(temp);
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值