java基础_day0019_数组_应用_交换变量的值_01

来源:互联网 发布:做淘宝的供应商 编辑:程序博客网 时间:2024/06/11 04:33

// 成员变量 值交换   

// 局部变量值 交换     此法错误 !!!!  局部变量的作用域 仅在 方法内部 ,  仅仅 此方法内 a和b的值 更改了 。

// 局部变量值 交换  正确做法   使用数组


package day05;/** * 交换两个变量的值  *  *       成员变量   值交换   *  *     局部变量   值交换 ,  基础类型的局部变量作用域 仅在 其方法内部。   *  *  *  * @author Administrator * */public class TestSWAP {public static void main(String[] args) {UtilC u=new UtilC();int a= 10;int b=4;u.a=5;u.b=6;//a  b    的值   未交换u.swap1(a,b);System.out.println("a="+a+"\t b="+b);//a b的值      交换int[] in = new int[2];in[0]=a;in[1]=b;u.swap2(in);System.out.println("a="+in[0]+"\t b="+in[1]);//u.a  u.b的值   交换 u.swap();System.out.println("u.a="+u.a+"\t u.b="+u.b);}}/** * 两个数交换   * @author Administrator * */class UtilC{ int a; int b;// 成员变量 值交换 public  void swap(){int temp=a;a=b;b=temp;}//局部变量值 交换     此法错误 !!!!  局部变量的作用域 仅在 方法内部 ,  仅仅 此方法内 a和b的值 更改了 。public  void swap1(int qa ,int qb){int temp=qa;qa=qb;qb=temp;}//局部变量值 交换  正确做法    public  void swap2(int[] arr){int temp=arr[0];arr[0]=arr[1];arr[1]=temp;}}


0 0