命名参数与可选参数
命名参数和可选参数让方法调用更清晰。可选参数在定义时给默认值,调用时可以不传;命名参数让调用时指定参数名,不按顺序传也能看懂。
自己写参数较多的方法时,用命名参数调用一看就懂每个参数是啥。比如 CreateOrder(name, qty: 10, urgent: true) 比 CreateOrder("apple", 10, true) 可读性好太多。
注意事项:1) 可选参数必须在必填参数后面;2) 默认值必须是编译期常量;3) 命名参数可以和位置参数混合,但位置参数要在前。
代码示例
// 可选参数:= 默认值
public static void CreateOrder(string product, int qty = 1, bool urgent = false, string note = "")
{
Console.WriteLine($"订购 {qty} 个 {product},紧急={urgent},备注={note}");
}
// 调用方式
CreateOrder("apple"); // 用默认值
CreateOrder("apple", 5); // qty=5
CreateOrder("apple", urgent: true); // 命名参数跳过 qty
CreateOrder("apple", 3, note: "送货上门"); // 混合
// 命名参数提高可读性
PrintInfo(name: "Tom", age: 25, city: "佛山");
static void PrintInfo(string name, int age, string city)
{
Console.WriteLine($"{name}, {age}, {city}");
}
学习小结:以上是我学习这个知识点时的笔记和心得。技术学习没有捷径,多写多练多踩坑,自然就掌握了。如果这篇笔记对你有帮助,欢迎继续看看其他文章。