Java小案例——交换两个数值的三种方法
来源:互联网 发布:java 比较文本相似度 编辑:程序博客网 时间:2024/05/17 08:31
要求:
互换两个数的值
方法一:借助第三方变量
/** * 借助第三方变量对两个值进行互换 * @author Administration * */public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); int temp = a; a=b; b=temp; System.out.println("a的值:"+a+",\tb的值:"+b); }}
运行结果:
a的值:10, b的值:15对两个值执行互换操作...a的值:15, b的值:10
方法二:不需要借助第三方变量(加减运算)
/** * 不需要借助第三方变量对两个值进行互换 * @author Administration * */public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); a=a+b; b=a-b; a=a-b; System.out.println("a的值:"+a+",\tb的值:"+b); }}
运行结果:
a的值:10, b的值:15对两个值执行互换操作...a的值:15, b的值:10
方法三:不需要借助第三方变量(异或运算)
/** * 不需要借助第三方变量对两个值进行互换 * @author Administration * */public class ExchangeValue { public static void main(String[] args) { int a = 10; int b = 15; System.out.println("a的值:"+a+",\tb的值:"+b); System.out.println("对两个值执行互换操作..."); a=a^b; b=a^b; a=a^b; System.out.println("a的值:"+a+",\tb的值:"+b); }}
原理:某个数值a与一个数值b进行异或运算得到c,则再用c与b运算可以还原a。因此这个原理可以实现两个数值的交换。
运行结果:
a的值:10, b的值:15对两个值执行互换操作...a的值:15, b的值:10
阅读全文
0 0
- Java小案例——交换两个数值的三种方法
- 交换两个整数数值的三种方法
- java 两个数值交换的6种方法
- Java--交换两个变量的值的三种方法:借助中间量交换,数值相加减交换,位移运算交换
- C语言中—— 三种方法实现两个数值交换
- 交换两个数值的几种方法
- 变量数值交换的三种方法
- 不使用中间变量,交换两个数值的三种方法
- JAVA_三种方法实现两个整形变量的数值交换
- Java交换两个变量的值的三种方法
- java版——实现两个数值交换的四种方式
- c语言交换两个数值的四种方法.
- C++中两个数值交换的几种方法
- C语言交换两个变量数值的几种方法
- 把两个变量交换数值的方法
- swift交换两个变量的数值方法
- 交换两个数的三种方法
- 两个数交换的三种方法
- JDBC入门
- Android Studio debug使用release的签名
- Stanford CS224n: Natural Language Processing with Deep Learning 课程笔记
- fxml入门
- Linux下利用NFS实现多服务器间的目录共享及文件同步
- Java小案例——交换两个数值的三种方法
- SharedPreferences实现数据存储
- 语言基础模块-三级菜单作业
- Node使用mongoose查询一直为空的原因
- Bitmap回收—Canvas: trying to use a recycled bitmap android.graphics
- 斐波那契数列的优化
- hdoj1054 Strategic Game(二分图最大匹配求最小点覆盖)
- mysql数据库需改默认字符编码
- Python numpy函数hstack() vstack() stack() dstack() vsplit() concatenate()