在JAVA中如何依靠第三个变量互换两个变量?

在Java中已知两个变量需要互换,如何利用第三个变量作为中间变量来互换这两个变量?代码怎么写?

如果可以使用第三个变量来进行互换变量,可以进行如下操作:
int a= 5 , b = 6;
int temp ;
temp = a ;
a = b;
b = temp;
这样就可以了。

也可以不使用第三变量:如下:
int a= 5 , b = 6;
a = a + b;
b = a - b;
a = a - b;
这样也是可以的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-08-15
int temp ;//这个是第三个变量!
int a=10,b=20; //这两个要交换!

temp=a; //把a值赋于temp, temp=10.
a=b; //b值赋于a,a被替换成20,a=20.
b=temp; //此时的temp是10,它赋于b,b=10.

a,b就被交换了!
第2个回答  推荐于2016-10-25
public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int temp;
int a=10,b=20;
System.out.println("交换前a"+a);
System.out.println("交换前b"+b);
temp=a;
a=b;
b=temp;
System.out.println("交换后a"+a);
System.out.println("交换后b"+b);

}

}本回答被网友采纳
第3个回答  2013-04-12
方法一:
a = a + b;
b = a - b;
a = a - b;
方法二:
a = a * b;
b = a / b;
a = a / b;
方法三:
a = a ^ b;
b = a ^ b;
a = a ^ b;
第4个回答  2008-08-17
给你说一下,其实不用第三个变量也能转过来,说一下:
int a = 5;
int b = 6;
现在让a = 6 b = 5
a = a + b; //a=11
b = a - b //b=5
a = a - b //a=6
OK现在
a = 6
b = 5
呵呵,不过常用的是引入第三个变量,参照上楼的吧!

java里如何利用第三个变量将另外两个变量进行转换
不过前提是数据类型必须是非String。对于这个题目,我认为,牌中有 A ,J,Q,K,如果不用 1,11,12,13分别代替的话,只能是把纸牌上的变量定义为String,而 String 是引用,不可以通过调用第三方函数实现交换数值(实际上是地址引用,相当于C语言的指针),但可以通过本身实现交换。正解1:int i...

JAVA中: 怎么借助第三个变量将前两个变量的值进行互换
基本编程啊,c=a,a=b,b=c,或者来个猛的,a^=b,b^=a,a^=b

Java进阶:Java变量类型之间的相互转换
现在我们还剩下一个字符型变量 事实上String类可以理解为一个char型数组 因此我们可以在String类中找到这样的方法来实现这种转换 charAt(int index)可以得到String类中某一位置上的字符 toCharArray()更可以将整个String类转换成一个char的数组 对于所有的包装类都存在一个名为toString()的方法可以将其转换...

java中交换两个数的值,不出现第三个变量,初学者,求完整程序
创建一个类,在该类中定义两个变量并为其指定初始值,然后交换两个变量的值,要求不允许借助第三个变量,只能使用异或运行实现两个变量值的交换。你可以参考一下以下方法import java.util.Scanner;public class VariableExchange { public static void main(String[] args){ System.out.println("...

java加法定义两个变量 第三个变量是两个变量和 如果不定义第三个变量...
应该是数据类型问题 byte char short int之间计算是全部转换成int的 或者用int接值或者强制转换 public static void main(String[] args) { \/\/ TODO Auto-generated method stub int i = 10;int j = 20;int z = 0;System.out.println(z=i+j);byte b1 = 100;byte b2 = 100;System.out....

java进行两数交换时,如何不用中间量就交换?
25-15=10 x = x-y;\/\/x= 25-10=15 System.out.println("x="+x+" y="+y);结果:x=10 y=15 x=15 y=10 早期为了减少中间变量对计算机内存的占用,采用中间的方法来交换数据。其实这种交换并不完美,如果交换的两个数都很大,可能会内存溢出。在现在的开发中建议使用中间值来交换数值。

RAPTOR如何输出两个数的互换?
设置第三个数值,将第一个数值赋予到第三个数值上,再将第二个数值赋予第一个,最后将第三个赋予第二个数值,即可互换输出。Raptor是一种可视化的程序设计环境,为程序和算法设计的基础课程的教学提供实验环境。使用RAPTOR设计的程序和算法可以直接转换成为C++、C#、Java等高级程序语言,这就为程序和算法...

Java下变量大小写驼峰、大小写下划线、大小写连线转换
在Java编程中,处理变量的大小写转换是一个常见的需求。无论是为了与数据库字段、属性getter和setter方法进行互换,还是为了遵循特定的命名规范,正确地实现大小写转换至关重要。本文将介绍如何使用Google Guava库来轻松完成这些转换。首先,需要在项目的pom.xml文件中引入Guava依赖包。这一步骤确保了我们能够...

老师在java中比较大小用一个变量来用作暂存值是什么意思啊,听不懂...
在Java中,比较大小通常会使用一个变量来暂存比较结果。这是因为比较操作的结果是一个布尔值(true或false),而如果直接将布尔值用于其他操作,可能会产生不符合预期的结果。使用一个变量来暂存比较结果的意思是将比较操作的结果存储在一个变量中,以便后续使用或处理。通过将比较结果存储在变量中,你可以...

java如何返回二个变量
好像没有太好的办法,因为Java语言不允许使用指针类型变量,所有返回值只能由一个。要是返回两个或者三个的话可以用数组或者列表但是:面向对象语言有个特点:用类来封装对象的属性,这样你可以把很多的属性值封装成为一个对象。然后返回一个对象,这样这个对象中有多个值,并且还有get和set公共方法,什么...

相似回答