(十四) C#基础学习之out/ref/params参数
一、out参数
用法:
* 当一个方法有多个返回值,且返回值类型不同时,使用out参数
* out多余返回类型在方法内必须被赋值,但不要被return;
* out多余返回类型在方法外不需要赋值;即使赋值,在下面的方法内也会被覆盖;
例子:

二、ref 参数
作用: 能够将一个变量带入一个方法中进行改变,改变完成后,再将改变后的值带出方法 (ref相当于给void方法添加了返回值功能)
注意:在方法外必须赋值,在方法内不需要赋值 (与out正好相反)
例子:

输出结果:
10
20
原因:ab并没有交换,因为changeValue() 方法没有返回值;因此需要借助ref:

输出结果:
20
10
三、params可变参数
作用:将参列表中与可变参数数组类型一致的元素都当做数组的元素去处理
注意: 1. 一个参数列表中只能出现一个params;
2. params的参数必须放在参数列表的最后一个;
- 例如:Test(string name, params int[] score, int id) ❌
必须:Test(string name, int id, params int[] score) ✅
例子:

注意:上述例子,当调用方法时写成 sumScore(name, 95, 82, 76) 是错误的,因为int类型不能直接传递给数组。此时可以借助params:


浙公网安备 33010602011771号