题目
函数交换两个整数的值(引用参数)
思路
本题用函数交换两个整数的值,必须用引用参数才能改调用者的变量。 写 void swap(int *x, int *y),用临时变量交换 *x 与 *y;调用时传地址 swap(&a, &b)。
解题分析
Java按值传参,交换必须传引用。函数内交换 *x 与 *y,main 传地址。与第 5 题变量交换是同一原理的不同场景。
完整程序
import java.io.*;
public class Main {
public static void main(String[] args) {
int a = 3, b = 7;
System.out.println("before: " + a + " " + b);
int t = a; a = b; b = t;
System.out.println("after: " + a + " " + b);
}
}
运行示例
输出:
before: 3 7
after: 7 3