as3强制转换 as
来源:互联网 发布:haproxy mysql 编辑:程序博客网 时间:2024/05/13 20:06
http://bbs.9ria.com/thread-17240-1-1.html
每一种编程语言都提供强制类型转换,允许你将某一种数据类型转换成另一种数据类型,AS3自然也不例外。对AS3中的强制类型转换还是不太清楚,以前AS中是这样进行强制类型转换的:假设有一个类叫做Class1,我们声明了一个它的对象 c1,如果想要将它转换成Class2类型,只要这样写:Class2(c1);
在AS3中你依然可以这样写,但是AS3 中提供了一个新的操作符: as ,并且推荐使用as 进行强制转换,上述的用 as 操作符实现就是这样:
c1 as Class2;
使用 as 操作符有几个好处:
1.它的效果和第一种方法是一样的。
2.如果类型不兼容无法转换,就会返回null,而不是出错。这样你就可以自定义错误的时候该做什么。
3.没有运行时错误(Run Time Error)提示。
不过有些时候我在使用 as 的时候并不能达到强制转换的目的,而使用第一种方法则可以。为什么 as 操作符有时候会不好用呢?这个问题困扰了我很久,知道昨天在MXNA上发现了一篇日志,才恍然大悟:
原来在AS3.0类库中最高层类(Top Level classes,所有Top Level classes的列表请看这里)之间进行强制转换时, as 操作符是不起作用的。比如,假如你想要将一个String 类型的字符串 str 转换成 Number 类型的数字 num 时,可能想要这样写:
num = str as Number;这样写是没有用的,你只能通过第一种方法来达到强制转换的目的:
num = Number(str);
特别感谢raghuonflex对此做了说明,也希望这些对学习AS3.0的人有些提示。
- as3强制转换 as
- AS3 强制类型转换
- AS3 强制类型转换
- AS3中的强制类型转换
- AS 中强制类型转换
- [AS-Hack]AS3中强制进行垃圾回收的方法
- [AS-Hack]AS3中强制进行垃圾回收的方法
- as和()强制类型转换的区别
- as和强制类型转换的区别
- flex中as强制类型转换
- flex中as强制类型转换
- as 和 强制转换的区别
- 201601 DELPHI_强制类型转换As
- 3、强制类型转换、as和is
- 条款3:操作符is或as优于强制转换
- C#中 As 和强制转换的总结
- C#下的强制类型转换应用分析:()、is、as
- 从IL看强制转换和is,as
- 跟Google学习Android开发-起始篇-管理活动的生命周期(4)
- linux前台与后台进程调度(ps fg bg)
- Qt Creator 使用技巧
- 应用javascript脚本验证表单元素是否为空
- ThinkPHP函数详解:C方法
- as3强制转换 as
- KMP算法模板
- 浅谈:Ext.data.JsonStore
- vim 括号匹配和各种跳转技巧
- PLS-00313: 'XXXXX' not declared in this scope
- 程序员应该养几条鱼
- shadow文件中密码的加密方式
- MySQL双主复制的主备数据一致性知多少
- CRUD 英文全称