zoukankan      html  css  js  c++  java
  • Flex 学习笔记 Array相关操作

    元素添加

    通过pushpop方法可以用一个Array类的一个实例构建一个栈的数据结构。通过这样的数据结构,可以实现更为复杂的算法。

    定义:

    var tempArr:Array = new Array();

    push

    //添加“Enya“到tempArr的尾部,tempArr中内容为Enya
    tempArr.push("Enya ");

    unshift

    //将“I“添加到tempArr头部,tempArr中原有元素往后移,tempArr中内容为I Enya
    tempArr.unshift("I ");

    元素插入

    splice

    //删除从索引位置“1”开始的0个元素,在此位置添加“like” tempArr中内容为I like Enya
    tempArr.splice(1, 0, "like");

    //删除从索引位置“2”开始的1个元素,在此位置将"张悬","王菲","燕姿"填充,tempArr中的内容为:I like 张悬 王菲 燕姿
    tempArr.splice(2,1, "张悬","王菲","燕姿");

    //若将该方法的参数改为
    tempArr.splice(2,0, "张悬","王菲","燕姿");
    //结果为I like 张悬 王菲 燕姿 Enya

    元素删除

    定义company初值:

    var company:Array = new Array("IBM", "APPLE", "SUN","ADOBE");

    pop

    //删除最后一个元素,company中内容为IBM,APPLE,SUN
    company.pop();

    shift:

    //删除index“0”的头部元素,company中内容为APPLESUN
    company.shift();

    splice

    //删除从索引位置1开始的0个元素,添加“IBM”到此索引位置,company中内容为APPLEIBM,SUN
    company. splice(1,0,”IBM”); 

    //删除从索引位置1开始的1个元素,添加“ADOBE”到此索引位置,company中内容为APPLEADOBE,SUN
    company. splice(1,1,” ADOBE”); 

    数组排序

    sort

    var nums:Array = new Array(2,0,5);

    //按照数字降序排列 nums变为520
    nums.sort(Array.NUMERIC | Array.DESCENDING);

    sortOn

    按照某个字段排序:

    //Array.NUMERIC默认为升序
    var students:Array = new Array(  );
                    students.push({name: "Jake", age:20});
                    students.push({name: "Tom", age:22});
                    students.push({name: "Will", age:17});
                    students.sortOn("age",Array.NUMERIC);

    数组查询

    concat()join()slice() toString() 用于查询数组中的信息,而不修改数组。concat() slice() 方法返回新数组;而 join() toString() 方法返回字符串。

    concat() 方法将新数组和元素列表作为参数,并将其与现有数组结合起来创建新数组。
    slice()
    方法具有两个名为 startIndex endIndex 的参数,并返回一个新数组,它包含从现有数组分离出来的元素副本。分离从 startIndex 处的元素开始,到 endIndex 处的前一个元素结束。值得强调的是,endIndex 处的元素不包括在返回值中。

    concat

    var array1:Array = ["alpha", "beta"];

    //  输出:alpha,beta,gamma,delta
    var array2:Array = array1.concat("gamma", "delta");

    // 输出:alpha,beta,alpha,beta,gamma,delta

    var array3:Array = array1.concat(array2);

    silce

    //显示索引位置为”2””5”的元素, 输出内容:alpha,beta,gamma

    var array4:Array = array3.slice(2,5);

    join() toString() 方法查询数组,并将其内容作为字符串返回。如果 join() 方法没有使用参数,则这两个方法的行为相同,它们都返回包含数组中所有元素的列表(以逗号分隔)的字符串。与 toString() 方法不同,join() 方法接受名为 delimiter 的参数;可以使用此参数,选择要用作返回字符串中各个元素之间分隔符的符号。

    toString

    var rivers:Array = ["Nile", "Amazon", "Yangtze", "Mississippi"];

    // 输出:Nile,Amazon,Yangtze,Mississippi

    var riverCSV:String = rivers.toString();

    // 输出:Nile+Amazon+Yangtze+Mississippi

    var riverPSV:String = rivers.join("+");


    对于 join() 方法,应注意的一个问题是,无论为主数组元素指定的分隔符是什么,为嵌套数组返回的值始终以逗号作为分隔符,如以下示例所示:

    var nested:Array = ["b","c","d"];     
    var letters:Array = ["a",nested,"e"];

    // 输出:a+b,c,d+e
    var joined:String = letters.join("+");

     

    相关链接:

    添加插入:http://www.blogjava.net/crazycoding/archive/2010/02/12/312616.html

    删除:http://blog.csdn.net/anfeind/article/details/4207645

    查询:http://hi.baidu.com/%CE%D2%B5%C4%B0%AE%C7%D9%BA%A3/blog/item/c7111f3b61c4dee714cecb6d.html

  • 相关阅读:
    Lock
    synchronized
    线程可见性与原子性
    线程安全问题
    MySQL索引背后的数据结构和原理
    求一颗二叉树中两个节点的最低公共父节点
    Session not active, could not store state 的解决方法
    https nginx 设置
    第三方支付系统
    facebook页面种简单测试js调用flash开放的js接口的方法
  • 原文地址:https://www.cnblogs.com/Anlycp/p/2240913.html
Copyright © 2011-2022 走看看