互换两个变量的值,不使用第三方变量
来源:互联网 发布:慈溪房产每日成交数据 编辑:程序博客网 时间:2024/05/17 06:53
当交换的为数字时:
<?php/** * 双方变量为数字时,可用交换方法五 * 使用加减运算符,相当于数学运算了^_^ */$a = 1; // a变量原始值$b = 2; // b变量原始值echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值$a=$a+$b; // $a $b和值$b=$a-$b; // 不解释..$a=$a-$b; // 不解释..echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
运行结果:
交换之前 $a 的值:1, $b 的值:2
交换之后 $a 的值:2, $b 的值:1
当交换的为字符串时:
一、异或
<?php/** * 双方变量为字符串或者数字时,可用交换方法四 * 使用异或运算 */$a = "This is A"; // a变量原始值$b = "This is B"; // b变量原始值echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值/** * 原始二进制: * $a:010101000110100001101001011100110010000001101001011100110010000001000001 * $b:010101000110100001101001011100110010000001101001011100110010000001000010 * * 下面主要使用按位异或交换,具体请参照下列给出的二进制过程, */$a=$a^$b; // 此刻$a:000000000000000000000000000000000000000000000000000000000000000000000011$b=$b^$a; // 此刻$b:010101000110100001101001011100110010000001101001011100110010000001000001$a=$a^$b; // 此刻$a:010101000110100001101001011100110010000001101001011100110010000001000010echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
运行结果:
交换之前 $a 的值:This is A, $b 的值:This is B
交换之后 $a 的值:This is B, $b 的值:This is A
二、str_replace<?php/** * 双方变量为字符串时,可用交换方法二 * 使用str_replace()方法达到交换变量值得目的 * 此方法较第一种,逻辑上稍微简单点 */$a = "This is A"; // a变量原始值$b = "This is B"; // b变量原始值echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出原始值$a .= $b; // 将$b的值追加到$a中$b = str_replace($b, "", $a); // 在$a(原始$a+$b)中,将$b替换为空,则余下的返回值为$a$a = str_replace($b, "", $a); // 此时,$b为原始$a值,则在$a(原始$a+$b)中将$b(原始$a)替换为空,则余下的返回值则为原始$b,交换成功echo '交换之后 $a 的值:'.$a.', $b 的值:'.$b,'<br>'; // 输出结果值
运行结果:
交换之前 $a 的值:This is A, $b 的值:This is B
交换之后 $a 的值:This is B, $b 的值:This is A
阅读全文
0 0
- 互换两个变量的值,不使用第三方变量
- C语言 - 两个数互换(不使用第三方变量)
- 【java基础】两个变量互换不使用第三方变量的方法
- 不使用第三个值,实现两个变量的互换
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量,交换两个变量的值
- 不使用第三方变量交换两个变量的值
- 不使用第三方变量,交换两个变量的值
- 不借助第三方变量,将x,y两个变量的值互换
- 不借助第三方变量,将x,y两个变量的值互换。
- 不借助第三方变量,将x,y两个变量的值互换
- 不借助第三方变量,将x,y两个变量的值互换。
- 不借助第三方变量,将x,y两个变量的值互换。
- 不使用第三方变量交换两个参数的值
- 二十三种设计模式图解
- Java 内存模型及GC原理
- Python3 执行操作系统命令的函数 system 和 popen 的区别
- 【学习】springmvc之springmvc简介及简单搭建
- 线程数究竟设多少合理
- 互换两个变量的值,不使用第三方变量
- Android 安装应用时显示 提示应用已安装请卸载问题
- 多线程Synchronized同步
- 面试题
- Dobbo框架入门
- linux环境部署java web项目
- I2C通信 初学笔记
- phptorm、chrome安装调试 xdebug
- sublime text 3 3143 授权码