第九节 传值、输出、引用、数组、具名/可选参数,扩展方法
视频链接:刘铁猛老师的《C#语言入门详解》
https://www.youtube.com/watch?v=EgIbwCnQ680&list=PLZX6sKChTg8GQxnABqxYGX2zLs4Hfa4Ca
传值参数
值类型的传值参数
**示例: **
打印结果:101 100 ,原因:y作为值传入AddOne方法时,创建的是一个副本(进行加1),y本身不变
引用类型的传值参数
(1)
测试:
(2)
测试:
引用参数 ref
值类型的引用参数
测试:
引用类型的引用参数
(1)
测试:
(2)
测试:
输出参数 out
值类型的输出参数
示例:TryParse方法
示例2:自定义TryParse方法
引用类型的输出参数
示例:
数组参数 params
示例:对比
使用了params,传值更加简单,不用创建数组了。
示例2:
具名参数
- 参数的位置不再受约束。
优点:(1)给代码添加了可读性(2)参数位置顺序可以改变
可选参数
示例:
扩展方法(this 参数)
示例1:给double类型添加一个Math.Round()的扩展方法。可以直接在double实例上调用Round方法
示例2:LINQ对比
LINQ:
这个All就是扩展方法