主函数虽然调用了swap(x,y)的方法,但是只是将变量x,y的值作为参数传递进函数进行了调换,调换后的结果与原变量的值无关,因为并未有返回操作对原有变量进行赋值。修改可以将变量的值存入数组进行置换,也可以将主函数的输出语句写到swap()函数内部:
- class Demo
- {
- public static void main(String[] args)
- {
- int x=1,y=2;
- swap(1,2);
- }
- public static void swap(int a,int b)
- {
- a=a^b;
- b=a^b;
- a=a^b;
- System.out.println("置换后x的值是:"+a+",置换后y的值是:"+b);
- }
- }
复制代码 |