`

java 互换两个变量i,j的值

 
阅读更多
例:互换两个变量 i,j的值
 
  因为数据有数据范围的限制,当数据过大超出数据范围的时候,就不能按如下方式互换
  @Test
  public void testChange(){
      int i=21;
      int j=22;
      i=i+j;
      j=i-j;
      i=i-j;
      System.out.println("i="+i+"   j="+j);
  }
  正确的互换方式应该是按位运算符运算,隐性转换长二进制数进行移位,"^ 按位异或 "
  @Test
  public void testChange(){
      int i=21;
      int j=22;
      i=i^j;
      j=i^j;
      i=i^j;
      System.out.println("i="+i+"   j="+j);
  }
分享到:
评论

相关推荐

    两变量值互换

    在标题“两变量值互换”中提到的方法,实际上是指在不借助额外辅助变量的情况下,通过位运算来实现两个变量的值互换。这种技术在内存有限或者对效率有较高要求的场景下特别有用。 首先,我们来看传统的加法方法。...

    Java两个变量的互换(不借助第3个变量)具体实现方法

    在Java编程中,有时我们需要交换两个变量的值,但又不希望使用额外的第三个变量来辅助这个过程。这种情况下,可以利用位运算中的异或(XOR)操作符来实现两个变量的互换。本文将详细讲解如何通过异或运算在Java中不...

    Java中使用异或语句实现两个变量的互换

    在Java编程语言中,有时我们需要交换两个变量的值,例如在数组排序算法或者特定的数据处理逻辑中。传统的方法是引入一个额外的临时变量来完成这个任务。然而,有一种更为巧妙且节省空间的方法,即利用位操作中的异或...

    java环境变量配置

    - 有时这两个变量可以互换使用,但最好根据具体需求进行配置。 - 新建变量`CATALINA_HOME`或`CATALINA_BASE`,值同样为Tomcat的安装目录。 3. **更新Path变量**: - 编辑`Path`变量,添加Tomcat的bin目录:`%...

    Java实现两个整数交换

    本人上传的第一个作品,超级简单,两个整数交换的经典例子,是在一个类中实现的,给JAVA初学者一个借鉴。希望在技术上共同进步

    java中关于变量的练习题及答案

    - **题目描述**: 写出将两个整型变量中的值互换的程序。 - **答案**: ```java int a = 9, b = 5, c = 0; c = a; a = b; b = c; System.out.println("a=" + a); System.out.println("b=" + b); ``` - **解析*...

    java互换纸牌

    - 有多种方法可以交换两个变量的值,这里可以使用临时变量法。首先创建一个临时变量,保存一张纸牌的值,然后将另一张纸牌的值赋给原来的变量,最后将临时变量的值赋给空出的变量。例如: ```java String temp = ...

    java如何交换这两个变量的值方法介绍

    在Java编程中,有时我们需要交换两个变量的值,例如在数组排序或数据处理的过程中。本文将详细介绍三种常见的方法来实现这个目标:借助中间量、数值相加减以及位移运算。 1. **借助中间量交换** 这是最直观且易于...

    Java 变量和数据类型

    当需要交换两个变量的值时,通常需要一个临时变量作为中介。例如,交换两个整数变量`num1`和`num2`的值: ```java int num1 = 19; int num2 = 89; int temp; temp = num1; num1 = num2; num2 = temp; ...

    等号左右互换

    这在实际编程中可能是因为需要实现变量值的对调,例如在交换两个变量的值时。 为了实现这种互换,我们可以使用多种方法: 1. **临时变量法**:创建一个临时变量,先将其中一个变量的值存储到临时变量中,然后将另...

    Java异或运算(简单的加密,解密)

    在传统的交换两个变量的值的方法中,我们通常会引入一个临时变量来存储其中一个值,然后将另一个值赋给第一个变量,最后将临时变量的值赋给第二个变量。但利用异或运算,我们可以避免使用额外的变量。异或运算的一个...

    java变量和javascript变量之间的传递示例

    最近在用jsp做一个网站,其间涉及到java变量和javascript变量之间的互换,虽然网上资料众多,但是众说纷纭,并且很多都是带有误导性,做了许多尝试,终于比较清楚的搞懂了这个问题。通俗一点来讲,就是说java代码是...

    java使用异或实现变量互换和异或加密解密示例

    首先,我们来看一下如何用异或来实现两个变量的互换,这是基于异或运算的一个重要性质:任何数与0异或都等于它本身,以及同一个数连续异或两次结果为0。以下是一个简单的Java示例: ```java public class ...

    test1_java_

    异或操作具有交换律,即`a ^ b ^ a = b ^ a ^ a = b`,所以经过三次异或操作,两个变量的值会互换。 这两个知识点是Java编程基础中的基本操作,对于初学者来说是非常重要的。理解并熟练掌握这些基础,能够为更复杂...

    java 交换两个数据的方法实例详解

    在Java编程语言中,交换两个数据是常见的操作,无论是在数组排序、列表操作还是其他算法中都可能遇到。本文将详细讲解两种交换两个数据的方法,并通过实例进行解析。 方法一:利用数组 数组是最基础的数据结构,...

    PTA-交换最小值和最大值

    1. 初始化两个变量,一个用于存储当前找到的最小值(初始值为正无穷大),另一个用于存储最大值(初始值为负无穷大)。 2. 遍历输入数组,对于每个元素: - 如果元素小于当前最小值,更新最小值。 - 如果元素大于...

    用java写的一个冒泡排序器

    如果当前元素大于下一个元素,两个元素的位置就会互换。`main`方法展示了如何使用这个排序器,并打印了排序前后的数组状态。 冒泡排序的时间复杂度为O(n^2),其中n是数组的长度。这使得它在处理大量数据时效率较低...

    第02章 Java编程基础 08 位运算符与变量交换

    在编程中,有时我们需要交换两个变量的值,而不使用额外的临时变量。位运算符可以有效地实现这一点,下面以一个例子说明: ```java int a = 5; // 二进制:0101 int b = 10; // 二进制:1010 a = a ^ b; // a现在是...

    数据结构(JAVA) 将含有n个整数元素的数组a0..n-1循环右移m位,要求算法的空间复杂度为O(1)

    1. 初始化两个指针,`i`指向数组的起始位置,`j`指向`i+m`(对n取模)的位置。 2. 当`i != j`时,执行以下操作: - 交换`a[i]`和`a[j]`的值。 - `i = i + 1;`,`j = j + 1;`。 3. 循环结束后,数组已循环右移m位。...

    蓝桥杯java模拟试题

    此题是交换两个整型变量`a`和`b`的值,无需额外变量。利用异或操作可以实现。缺失的代码应为: ```java a = a ^ b; b = a ^ b; a = a ^ b; ``` 异或操作的性质是:a ^ a = 0,a ^ 0 = a,所以通过异或两次,a和b的值...

Global site tag (gtag.js) - Google Analytics