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

// 成员变量 值交换   

// 局部变量值 交换     此法错误 !!!!  局部变量的作用域 仅在 方法内部 ,  仅仅 此方法内 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;
	}
	
	
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

prefectjava

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值