C# params 关键字详解

params 关键字用于声明参数数组 ,允许方法接受可变数量的参数 。它是创建可变参数方法的便捷方式。

基本语法

复制代码
// params 参数必须是方法最后一个参数
public void Method(params int[] numbers)
{
    // numbers 是一个 int 数组
}

// 调用时可以传递任意数量的参数
Method(1, 2, 3, 4, 5);
Method(10, 20);
Method();  // 也可以不传递参数

使用示例

1. 基础用法

复制代码
public int Sum(params int[] numbers)
{
    int total = 0;
    foreach (int num in numbers)
    {
        total += num;
    }
    return total;
}

// 调用
int result1 = Sum(1, 2, 3);           // 6
int result2 = Sum(10, 20, 30, 40);    // 100
int result3 = Sum();                  // 0

2. 与其他参数结合

复制代码
// params 必须是最后一个参数
public string Format(string format, params object[] args)
{
    return string.Format(format, args);
}

// 调用
string result = Format("姓名:{0},年龄:{1},成绩:{2}", "张三", 20, 95.5);

3. 传递数组

复制代码
// 可以直接传递数组
public void Process(params string[] items)
{
    foreach (var item in items)
    {
        Console.WriteLine(item);
    }
}

// 调用方式1:传递多个参数
Process("A", "B", "C");

// 调用方式2:传递数组
string[] array = { "X", "Y", "Z" };
Process(array);  // 会自动识别为 params 参数

// 调用方式3:空参数
Process();  // 传递空数组
相关推荐
AIFarmer9 分钟前
【无标题】
开发语言·c++·算法
昇腾CANN23 分钟前
TileLang-Ascend 算子性能优化方法与实操
开发语言·javascript·性能优化·昇腾·cann
沐知全栈开发34 分钟前
ionic 手势事件详解
开发语言
lsx2024061 小时前
Bootstrap 按钮
开发语言
神仙别闹1 小时前
基于 Python 实现 BERT 的情感分析模型
开发语言·python·bert
禾叙_1 小时前
【langchain4j】结构化输出(六)
java·开发语言
NQBJT1 小时前
VS Code配置Python人工智能开发环境
开发语言·人工智能·vscode·python
byoass1 小时前
智巢AI知识库深度解析:企业文档管理从大海捞针到精准狙击的进化之路
开发语言·网络·人工智能·安全·c#·云计算
南境十里·墨染春水1 小时前
C++笔记 STL——set
开发语言·c++·笔记
L1624761 小时前
Win11 共享→Windows Server 访问故障总结(极简可复用)
开发语言·windows·php