用C#,自定义四个类,每个类分别定义带值参数、ref参数、out参数、params参数的方法。 在Main方法中创建该类并调用各自的方法,测试 不同参数的效果并打印出来。
时间: 2024-10-18 18:19:29 浏览: 3
在C#中,你可以通过定义一些基础类,并分别使用不同的参数类型来演示带值参数、ref参数、out参数和params参数。这里是一个简单的例子:
```csharp
using System;
// 定义一个基础类,用于包含各种类型的参数方法
public class ParameterExample
{
// 带值参数方法,接收一个整数作为参数并返回一个新的值
public int ByValue(int value)
{
return value * 2;
}
// ref参数方法,接收一个引用类型的参数,改变它的值
public void RefParameter(ref int value)
{
value = value + 5;
Console.WriteLine($"Ref parameter changed to: {value}");
}
// out参数方法,接收一个初始为0的引用类型的参数,最后会设置其值
public void OutParameter(out int value)
{
value = 10;
Console.WriteLine($"Out parameter set to: {value}");
}
// params参数方法,接收任意数量的整数参数,以数组形式传递
public void ParamsMethod(params int[] values)
{
Console.WriteLine("Params method received:");
foreach (int value in values)
Console.Write($"{value} ");
}
}
class Program
{
static void Main()
{
ParameterExample obj = new ParameterExample();
// 调用带值方法
int result = obj.ValueMethod(7);
Console.WriteLine($"ByValue result: {result}");
// 调用ref方法
int num = 15;
obj.RefParameter(ref num);
Console.WriteLine($"After ref param call: {num}");
// 调用out方法
int outNum;
obj.OutParameter(out outNum);
Console.WriteLine($"After out param call: {outNum}");
// 调用params方法,传入多个参数
obj.ParamsMethod(8, 9, 10, 11);
}
}
```
当你运行这个程序,你会看到不同的参数效果:
1. `ByValue`方法会返回新的计算结果。
2. `RefParameter`方法改变了外部变量的值。
3. `OutParameter`方法显示了分配给`out`参数的新值。
4. `ParamsMethod`展示了传递的所有参数。
阅读全文