員工基本工資為5000元,獎金方法+500元,調用該方法之后為什么工資還是5000元?
static void Main(string[] args) { double salary = 5000; jiangJin(salary); Console.WriteLine(salary); Console.ReadKey(); }
public static void jiangJin(double salary) { salary += 500; }
5500的正確代碼寫法,是不是有點麻煩呢?
static void Main(string[] args) { double salary = 5000; double d = jiangJin(salary); Console.WriteLine(d); Console.ReadKey(); }
public static double jiangJin(double salary) { salary += 500; return salary; }
ref參數:將變量帶入一個方法中改變之后在帶出方法
注意事項:
ref參數在方法外也就是調用方法之前必須為其賦值
static void Main(string[] args) { double salary = 5000; jiangJin(ref salary); Console.WriteLine(salary); Console.ReadKey(); } public static void jiangJin(ref double salary) { salary += 500; }
ref參數在變量交換中的示例
static void Main(string[] args) { int n1 = 10; int n2 = 100; Program.Test(ref n1, ref n2); Console.WriteLine(n1); Console.WriteLine(n2); Console.ReadKey(); } public static void Test(ref int n1, ref int n2) { int temp = n1; n1 = n2; n2 = temp; }
