`

交换两个数的位置,不用中间变量

 
阅读更多
a ^= b;
b ^= a;
a ^= b;

1最常用的:
public static void main(String[] args) {
int a = 5;
int b = 4;
a = a^b;
b = b^a;
a = a^b;
System.out.print(a + ":" + b);
}
这个是最快的

其次不是很好但是可行的
public static void main(String[] args) {
int a = 5;
int b = 4;
a = a+b;
b = a-b;
a = a-b;
System.out.print(a + ":" + b);
}和
public static void main(String[] args) {
int a = 5;
int b = 4;
a = a * b;
b = a / b;
a = a / b;
System.out.print(a + ":" + b);
}
这2种可能会内存溢出,不建议使用

最后一种,可能大家没看过的,可能是最难理解的:
public static void main(String[] args) {
int a = 5;
int b = 4;
b = a + 0 * (a = b);
System.out.print(a + ":" + b);
}
分享到:
评论

相关推荐

    示例代码:不经过中间变量交换两个数

    ### 不经过中间变量交换两个数 #### 知识点概览 1. **位运算符的理解与应用** - 位运算符的概念及其在编程中的作用 - 位异或运算符`^`的工作原理及其特性 2. **不使用额外变量交换两个数的方法** - 基于位异或...

    Java不使用中间变量交换两个数

    在编程中,交换两个数值是常见的操作,但不使用中间变量进行交换可能需要一些巧妙的技巧。本文将探讨如何在Java中实现这一目标,主要基于数的中和原理,即通过特定的运算使得两个数相互抵消,从而达到交换的目的。 ...

    一种不需要中间变量交换两个变量内容的方法

    标题中的“一种不需要中间变量交换两个变量内容的方法”是指在编程中实现两个变量值互换的一种技巧,通常在C语言或其他编程语言中,我们会使用一个额外的中间变量来完成这个任务。然而,描述中提到的朋友分享的方法...

    不使用中间变量,交换int型的 a, b两个变量的值。

    总结来说,不使用中间变量交换两个变量的值有多种方法,包括位运算、算术运算、数组存储和对象属性。不同的方法适用于不同的场景,位运算和算术运算通常更快,但需要考虑溢出和数据类型限制;数组存储和对象属性方法...

    swapping:matlab中两个数的交换-matlab开发

    在 MATLAB 开发中,"swapping" 是一个常见的操作,特别是在处理数组或变量时,我们可能需要交换两个数值的位置。MATLAB 是一种高级的矩阵和数组编程语言,它提供了丰富的数学函数库和直观的交互环境,使得这类操作变...

    JS实现不用中间变量temp 实现两个变量值得交换方法

    在JavaScript编程中,有时我们需要交换两个变量的值而无需使用额外的中间变量。这在内存管理有限或希望优化代码的情况下特别有用。以下是三种常见的方法来实现这个目标: 1. **加减法交换**: 这是最直观的方法,...

    最简单的交换两个整数算法

    在编程领域,交换两个变量的值是一个常见的操作。通常,我们使用一个临时变量来辅助完成这个过程。然而,有一种巧妙的方法可以实现两个整数的交换,而无需使用额外的中间变量,这就是通过位运算来完成。这种方法对于...

    如何在STEP7 WINCC中编写脚本实现2个PLC之间的数据交换?.docx

    本文将详细介绍如何在STEP7 WINCC中通过编写C脚本来实现两个PLC之间的数据交换。 首先,我们需要理解基本的概念。STEP7是用于编程Siemens SIMATIC S7系列PLC的软件,而WINCC则是与PLC配合的人机界面系统,用于监控...

    SWAP:交换两个变量的内容-matlab开发

    SWAP(A,B) 将变量 A 的内容放入变量 B,反之亦然。 您可以使用函数语法'swap(A,B)'或命令语法'swap A B'。 例子: A = 1:4 ;... 与这两种方法相比的优势在于,使用 SWAP 一种不必声明中间变量或担心输出。

    输入两个数.docx

    在这个方法中,我们可以使用一个中间变量来实现两个数的交换。例如: ```c int a, b; int c; printf("please enter two integer numbers:"); scanf("%d %d", &a, &b); printf("a=%d b=%d\n", a, b); if (a ) { c = ...

    变量交换的几种常见方法

    例如,在C++中,可以通过修改指针所指向的内存地址来间接交换两个变量的值。这种方法通常在内存管理和低级编程中使用,但需要小心处理,避免内存访问错误和溢出问题。 #### 结论 变量交换的方法多种多样,每种方法...

    Delphi交换两个变量值的方法(含示例)

    XOR运算符在某些情况下可以用于无中间变量交换两个变量的值,但仅适用于整数类型。 ```delphi var A, B: Integer; begin A := 5; B := 10; A := A XOR B; B := A XOR B; A := A XOR B; Writeln('A: ', A...

    JavaScript两个变量交换值的实现方法

    本文主要描述,如何不使用中间值,将两个变量的值进行交换。 一、普通做法 var a = 1, b = 2, tmp; tmp = a; a = b; b = tmp; 普通的做法就是声明多一个临时变量tmp,进行数据交换过程中的缓存。这样的做法直观...

    易语言整数快速交换

    在大多数编程语言中,交换两个整数变量的值通常使用中间变量。例如,如果我们有两个整数变量A和B,我们可能会这样做: ```python temp = A A = B B = temp ``` 这种方法简单直观,但涉及到了额外的存储空间。而在...

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

    在Java中,我们可以使用异或(^)操作符来交换两个变量的值,因为异或两次相同的数等于零。具体步骤如下: ```java int x = 10; int y = 20; x = x ^ y; // 对x和y进行异或运算,得到它们的异或结果并赋给x y ...

    python交换两个变量的值方法

    大部分语言,例如c语言,交换两个变量的值需要使用中间变量。 例如交换a,b 伪代码: tmp = a a = b b = tmp python里面可以实现无临时变量的交换 (a,b) = (b,a) 对于它的交换原理我深感好奇,因为这意味着python...

    单片机C51-绝对地址访问 两数交换 3种方法

    所以,可以这样交换两个数的值,无需额外的存储空间。 ```c a = a ^ b; b = a ^ b; a = a ^ b; ``` 3. 加减法操作:这种方法基于算术运算,适用于整数。首先,将a加上b,然后将结果减去b两次。这样,a会变成原来的...

Global site tag (gtag.js) - Google Analytics