本页面由 Flash 保存计划 从 Internet Archive 存档还原 · 快照 2004-12-09 · 原址 http://www2.flash8.net/teach/452.htm ← Flash 保存计划
 
说说异或运算^和他的一个常用作用
作者:AOL  
时间: 2003年5月24  类型: 原创  
收藏 发送 评论 <%=votevote%>打印 字体选择:   

说说异或运算^和他的一个常用作用。
异或的运算方法是一个二进制运算:
1^1=0
0^0=0
1^0=1
0^1=1

两者相等为0,不等为1.

这样我们发现交换两个整数的值时可以不用第三个参数。
如a=11,b=9.以下是二进制
a=a^b=1011^1001=0010;
b=b^a=1001^0010=1011;
a=a^b=0010^1011=1001;
这样一来a=9,b=13了。


举一个运用, 按一个按钮交换两个mc的位置可以这样。

mybt.onPress=function()
{
mc1._x=mc1._x^mc2._x;
mc2._x=mc2._x^mc1._x;
mc1._x=mc1._x^mc2._x;
//
mc1._y=mc1._y^mc2._y;
mc2._y=mc2._y^mc1._y;
mc1._y=mc1._y^mc2._y;
}

这样就可以不通过监时变量来传递了。

最后要声明:只能用于整数。

相关讨论地址http://www.flash8.net/bbs/dispbbs.asp?boardID=38&ID=86708

责任编辑:古墓
上一篇: Poser 4基础教程 下一篇: 谈谈模拟足球游戏中人工智能
 
给出一篇链表的
EventDispatcher代码分析
AS2.0面向对象编程基础
游戏组件的创建、打包和运用全过程
谈谈模拟足球游戏中人工智能
很逼真的鼠标跟随的鱼的做法讲解