如何在Java中实现将两个数相互交换的方法

原创 2007年09月21日 22:38:00

        在C/C++中,我们可以利用指针或引用来解决问题,比如一下的C代码:

 

void swap(int *a, int *b)
...{
        
int  temp  =  *a;
        
*a  =  *b;
        
*b  =  temp;
}

或是以下C++代码:

 

void  swap(int  &a,  int  &b)
...{
        
int  temp  =  a;
        a  
=  b;
        b  
=  temp;
}

但是要在Java中实现这个功能就比较麻烦。

不妨大家可以先试试。

 

        我下面就贴出自己实现这个功能的方法:

 


class WrappedNumber<extends Number> ...{
    
    
private T i = null;
    
    
public WrappedNumber(T i) ...{
        
this.i = i;
    }

    
    
public T getNumber() ...{
        
return i;
    }

    
    
public void setNumber(T i) ...{
        
this.i = i;
    }

}



public class Hello ...{
    
    
public static <extends Number> void swap(WrappedNumber<T> a, WrappedNumber<T> b) ...{
        T temp1 
= a.getNumber();
        a.setNumber(b.getNumber());
        b.setNumber(temp1);
    }

    
    
public static void main(String[] args) ...{
        
        WrappedNumber
<Short> a = new WrappedNumber<Short>((short)10);
        WrappedNumber
<Short> b = new WrappedNumber<Short>((short)20);
        
        Hello.
<Short>swap(a, b);
        
        System.out.println(
"The answer is: a=" + a.getNumber() + ", b="+b.getNumber());
    }

}

java两个数进行交换

int temp; int n = 3, m = 8; //1、通过第三方变量 temp = n; n = m; m = temp; //2、不用第三方变量 n=n+m; m=n-m;...
  • z7152008
  • z7152008
  • 2011年11月21日 19:40
  • 234

如何用JAVA对两个整数变量的值进行互换的三种方法

对于初学者来说,不管是学哪种语言,经常会遇到以下的题目:对两个变量的数值进行互换。今天特对此做个总结,我所熟知的三种方法。 第一种方法-----利用第三方变量.public class Demo01...
  • ai1161992052
  • ai1161992052
  • 2015年12月13日 19:00
  • 595

Java实现两数字交换

jJva基本数据类型作为参数 只能传值 对象只能传引用
  • LimingyueLi
  • LimingyueLi
  • 2014年06月24日 21:12
  • 781

java版——实现两个数值交换的四种方式

实现两个数值交换,最常用的莫过于中间变量法,那是不是还有别的方式呢。请看下文: class Operator { // 实现两个数值交换的多种方式 public static void main...
  • wang740209668
  • wang740209668
  • 2017年03月05日 10:38
  • 511

java编程实现两个数字的交换

这个题目有三种解法。 1这个题目,我们解决的思路是 搞一个中间变量 来临时存储一个变量的值; 我们这里给下参考代码: 1 2 3 4...
  • djfgduyhgfu
  • djfgduyhgfu
  • 2016年10月17日 12:06
  • 2280

java交换两个数的常见方法及效率测试

论两个数的交换的重要性 讨论交换两个数的方法对某些人来说无聊,但某些人很乐意探究,甚至某些面试官喜欢用这个做文章。刚出来找工作笔试的时候我也碰到与之相关的问题。 常见的两个数交换的方法 边...
  • qq525099302
  • qq525099302
  • 2015年08月05日 11:31
  • 1402

Java快速交换两个数的值

1:通过使用异或运算,可以快速将两个数的值交换:原理如下:     我们知道异或是相同取0相反取1,如:0101异或1101的结果是1000。如对两个数,经过三次进行异或运行后的结果是这两个数的值互...
  • sunshine_love
  • sunshine_love
  • 2012年06月27日 12:22
  • 2147

Java 值交换详解

Java中有四种交换方式,分别是基本数据类型 数组,实例对象, String交换 下面我一一举个例子来讲解~ 1.基本数据类型交换 看下面代码: public class Test { p...
  • qq_33642117
  • qq_33642117
  • 2016年07月16日 17:06
  • 452

如何用Java写一个交换函数

最近在写Java时突然遇到一个问题,就是怎样在Java中写一个函数,实现两个数的交换,这个问题在学习C或者C++的时候我们常用来描述值传递和地址传递的区别,例如在C++中这个函数可以这样写://cpp...
  • Abel__Huang
  • Abel__Huang
  • 2016年08月23日 00:49
  • 1277

java 两个数值交换的6种方法

1.  第三变量        temp = a ;        a = b;        b = temp; 2.  + - 运算         a = a + b;   b = a...
  • yhsbzl
  • yhsbzl
  • 2014年02月06日 14:35
  • 428
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在Java中实现将两个数相互交换的方法
举报原因:
原因补充:

(最多只允许输入30个字)