守望者--AIR技术交流

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: ANE FlasCC 炼金术
查看: 710|回复: 1

[算法/性能优化] 是时候总结一下Array和Vector了

[复制链接]
  • TA的每日心情
    擦汗
    2018-4-10 15:18
  • 签到天数: 447 天

    [LV.9]以坛为家II

    1742

    主题

    2094

    帖子

    13万

    积分

    超级版主

    Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

    威望
    562
    贡献
    29
    金币
    51788
    钢镚
    1422

    开源英雄守望者

    发表于 2015-1-12 20:38:53 | 显示全部楼层 |阅读模式
    搜了一些相关帖子,发现有的讲解不全,有的误导观众,故而总结与此。以供新手学习。


    1.初始化和类型检查
    Array没有类型检查,但不代表Array不支持类型定义,Look:

    1. var arr:Array.<Number> = [1, 2, 3, 4, 5,"a"];
    复制代码

    //这样写的好处是——有代码提示!坏处是——依旧不规范,因为编译器不会提示你"a"元素的错误。还是要自己多加注意。


    Vector有类型检查,但是也可以没有!Look:

    1. var vec:Vector.<Number> = new <Number>[1,2,3,4,5,"a"];//报错!

    2. var vec:Vector.<*> = new <*>[1,2,3,4,5,"a"];//不报错但不建议
    复制代码




    2.效率
    没有绝对高下之分,总的来说,Array处理复杂类型时更快(如Object),Vector处理基础类型(如Number String)更快。具体资料可自行搜索。

    3.功能
    Array有sortOn方法,可以排序复杂对象。
    Vector可以固定长度,防止出错。


    4.转换
    Array转为Vector十分简单:
    游客,如果您要查看本帖隐藏内容请回复


    作者:雨声敲敲
    blog:blog.sina.com.cn/rainssong
    homepage:rainsgameworld.sinaapp.com/
    weibo:weibo.com/rainssong
    转载请注明
    守望者AIR技术交流社区(www.airmyth.com)
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-2-24 01:34
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    0

    主题

    38

    帖子

    868

    积分

    上士

    Rank: 5Rank: 5

    威望
    20
    贡献
    0
    金币
    14
    钢镚
    0
    发表于 2019-2-24 02:59:03 | 显示全部楼层
    感谢分享!~
    守望者AIR技术交流社区(www.airmyth.com)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    
    关闭

    站长推荐上一条 /4 下一条

    QQ|手机版|Archiver|网站地图|小黑屋|守望者 ( 京ICP备14061876号

    GMT+8, 2019-11-18 17:19 , Processed in 0.046807 second(s), 34 queries .

    守望者AIR

    守望者AIR技术交流社区

    本站成立于 2014年12月31日

    快速回复 返回顶部 返回列表