精华内容
下载资源
问答
  • 下面小编就为大家带来一篇Java 交换两个变量的数值实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做参考。一起跟随小编过来看看吧
  • 调用swap函数之后,两个索引号对应的就已经被交换了。下面是测试使用的代码。在myeclipse 6.5 中编译通过。这段代码实现的是数组元素从小到大的排序。public class Hello{public static void main(String args[]){...

    定义swap函数,传进的参数是数组名,以及需要被交换的两个索引号。调用swap函数之后,两个索引号对应的值就已经被交换了。

    下面是测试使用的代码。在myeclipse 6.5 中编译通过。

    这段代码实现的是数组元素从小到大的排序。

    public class Hello

    {

    public static void main(String args[])

    {

    //定义一个数组a

    int a[] = { 32, 3, 2, 5, 6, 8, 4 };

    for (int i = 0; i < a.length; i++)

    {

    //第二层循环从第一层循环的元素后面哪个元素开始

    for (int j = i + 1; j < a.length; j++)

    {

    //如果第二个元素比第一个小的话就换位置

    if (a[j] < a[i])

    swap(a,i,j);

    }

    }

    //打印数组各个元素

    for (int i = 0; i < a.length; i++)

    {

    System.out.println(a[i]);

    }

    }

    public static void swap(int[] data, int a, int b) {

    int t = data[a];

    data[a] = data[b];

    data[b] = t;

    }

    }

    展开全文
  • 第一步求出数的和为10,传给m,再用总数减去n就是原来m的,传给n,然后总数再减去原来m的,得到原来n的,传给m,实现交换。 3.异或运算(前提只能是整数): 这种方法不常见到(但很重要、很猥琐、很...

    1. 中间变量(最普遍、最广泛使用的交换方式)

    在这里插入图片描述

    这种方法很容易理解,就是创建temp中间变量,m把值给temp,n给m,temp将m的值给n,这样就实现了交换。

    2. 加减运算(前提只能是数字,但如果两数本来就过大,两数相加时会有溢出风险)

    在这里插入图片描述

    因为这种方法需要运算,所有只能是数字,eg:m=8,n=2;第一步求出两数的和为10,传给m,再用总数减去n就是原来m的值,传给n,然后总数再减去原来m的值,得到原来n的值,传给m,实现交换。

    3. 异或运算(前提只能是整数)

    在这里插入图片描述

    这种方法不常见到(但很重要、很猥琐、很魔幻,需铭记,是由于异或运算的强大,建议不太熟悉概念和特性的一定要去补补),这要先把数字转换成二进制
    例如:m = 3 = 0011,n=4 = 0100

    第一步:m^n异或结果:0011 ^ 0100 = 0111 = 7,赋给m

    第二步:m^n异或结果:0111 ^ 0100 = 0011 = 3,赋给n

    第三步:m^n异或结果:0111 ^ 0011 = 0100 = 4,赋给m

    实现了 m n 交换

    展开全文
  • 定义两个变量a和b,交换a、b的,并打印出 实现方式有四种: 1、定义第三个变量,来临时存储 int a=10,b=20,temp; temp=a;// a=b; b=temp;System.out.println("a="+a+",b="+b); 2、利用位运算,面试时...

    定义两个变量a和b,交换a、b的值,并打印出

    实现方式有四种:

    1、定义第三个变量,来临时存储

    int a=10,b=20,temp;

          temp=a;//

          a=b;

          b=temp;System.out.println("a="+a+",b="+b);

    2、利用位运算,面试时用(任何数a异或一个数b两次,结果等于a)

    int a=10,b=20;

          a=a^b;

          b=a^b; //a^b^b=a;

          a=a^b; //a^b^a=b;

          System.out.println("a="+a+",b="+b);

    3、数学方法

    int a=10,b=20;

          a=a+b;//30

          b=a-b;//10

          a=a-b;//20

          System.out.println("a="+a+",b="+b);

    4、一句话搞定

    int a=10,b=20;

          b=(a+b)-(a=b);

    System.out.println("a="+a+",b="+b);

    展开全文
  • Java 交换两个变量值的方法

    千次阅读 2018-09-01 13:59:26
    Java 交换两个变量值的方法 第一种:使用第三个变量进行交换 int a = 5; int b = 6; int c = a; a = b; b = c; 输出结果截图: 第二种:不使用第三个变量(利用加法) int a = 5; int b = 6; a = a +...

    Java 交换两个变量值的方法


    第一种:使用第三个变量进行交换

    int a = 5;
    int b = 6;
    int c = a;
    a = b;
    b = c;

    输出结果截图:
    这里写图片描述

    第二种:不使用第三个变量(利用加法)

    int a = 5;
    int b = 6;
    a = a + b;
    b = a - b;
    a = a - b;

    结果:
    这里写图片描述

    展开全文
  • 在程序中实现交换两个数的功能并不复杂,但如果不使用中间变量,需要动一下脑筋。在本文介绍了两方法(其实原理都是一)。其基本原理是数的中和。也是说,通过某种运算(二元运算)将a和b两数变成一数,并...
  • Java交换两个变量(三种方法)

    千次阅读 2020-05-06 19:03:16
    变量交换Java面试考题): int a = 10; int b = 20; 1.借助中间量交换 int temp = a; a = b; b = temp; 原理:类似于杯水互换杯子,需要借助第三杯子来实现。 2.位移运算交换 a = a ^ b; b = a ^ b; a = a ^ b...
  • Java中三种方法交换两个变量

    千次阅读 多人点赞 2019-07-21 19:09:57
    1、中间变量 是最普也是最广泛使用的交换方式: ...第一步求出数的和为10,传给m,再用总数减去n就是原来m的,传给n,然后总数再减去原来m的,得到原来n的,传给m,实现交换。 3.异或运...
  • java中,我们可以将两个变量当做一对象的两属性,之后将该对象当做方法的参数,此时再用最平常的方法就可以交换两个数的了。 public class Test { int x,y; public static void main(String[] args) { ...
  • 对于这问题,相比于 C语言中较大的区别,首先,如果我们在Java中采用C语言的方式 public class Arithmetic { public static void main(String[] args) { int a = 4; int b = 5; System.out.println("交换...
  • 方法1:实现两个变量值交换,不使用第三个变量 我们可以通过数学运算中的差值来实现交换   int a=10,b=20;     a=a+b;     b=a-b;     a=a-b;     交换成功,运行结果如下图 ...
  • 在编程中可能会使用java来完成两个变量值交换,本文将介绍如何解决此类问题,希望可以帮助您
  • 在进行开发时,往往需要对两个整数变量进行交换,可采用以下三种方法:1、借助临时变量;public static void swap1(int a,intb ){System.out.println("原始:"+a+","+b);int temp =a ;a=b;b=temp;System.out....
  • 【小家javajava5新特性(简述十大新特性) 重要一跃 【小家javajava6新特性(简述十大新特性) 鸡肋升级 【小家javajava7新特性(简述八大新特性) 不温不火 【小家javajava8新特性(简述十大新特性) ...
  • java交换2个变量值的三种方法

    千次阅读 2020-08-30 21:40:28
    java交换2个变量值的三种方法 例:int a = 9;b = 1;交换a,b的 第一种:生成第三方变量(多占内存) int temp = a; //生成第三方临时变量temp,将a的赋给它 a = b; //将b的赋给a b = temp; //将临时变量...
  • 主要介绍了Java中使用异或语句实现两个变量的互换,本文直接给出代码实例以及运行结果,需要的朋友可以参考下
  • 在了解如何用Java交换两个变量的之前,我们来看看C语言是如何交换两个变量值的吧 C语言 #include<stdio.h> //编写一函数,名为change,用于交换两数字的 void change(int &a,int& b){ int ...
  • 方法1(常规需要中间变量,写程序常用): temp=x; x=y; y=temp; 方法2(可能溢出) x=x+y; y=x-y; ...方法3:利用异或运算的性质:一数和两个相同的数异或,不变 x=x^y; y=x^y x=x^y ...
  • 群中的题目,不过这样大众脸的题想必大家都见过,就看能玩出什么新花招
  • Java 如何用方法交换两个变量

    千次阅读 多人点赞 2018-01-16 09:19:06
    在学习C++的时候,我们需要学习如何用指针和方法来交换两个变量,比如swap(int*, int*)。而当我学习Java的时候,因为没有指针,所以我们需要另求他法。这引起了我下面的思考: (1)方法不能修改基本类型的...
  • class TestExer1 { public static void main(String[] args) { int m=12;... //方法一:提供一临时变量 int temp=m; m=n; n=temp; System.out.println("m:"+m+"\n"+"n:"+n); Syst
  • 主要介绍了Java两个变量的互换(不借助第3个变量)具体实现方法,需要的朋友可以参考下
  • 1.初学者方法: 先建立一临时变量temp; 先将任意一个变量(假设为b)的数值...1.我们可以把两个变量(假设为a,b)的和假设成第三方变量(sum)。 2.当我们要进行交换的时候 变量a = sum-a;(这样不就完成了将b赋...
  • 在很多时候,我们会使用到将两个整型变量值进行互换,比如冒泡排序,通过判断来将数组变量逐步交换,那么怎么交换值才能最有效最节省空间呢?首先,我们会想到的,用一零时变量来做中间的过度存储空间,这是很...
  • 如何用java实现两个变量值的互换!

    千次阅读 2021-02-13 02:22:06
    1、通过第三方变量实现两个变量交换:2、通过已有的两个变量之间的加或减实现:这种方法对于两个都是无限接进int取值范围,而相加超出int取值范围的情况不适用。3. 指针地址操作因为对地址的操作实际上进行的是...
  • Java 编程 简单交换两个变量的方法 在java编程中,两个变量互换,通过创建一临时变量temp,用于存放a的,然后把b的赋值给a,再把temp的赋值给b,于是就完成了两个变量交换` 如下图所示 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 120,956
精华内容 48,382
关键字:

java交换两个变量的值

java 订阅