`

flash.utils.Dictionary与Array,ArrayConllection,Object, for与for each

    博客分类:
  • flex
阅读更多

1.for与for each:
for..in 循环用来基于键进行循环访问;而 for each..in 循环用来基于与每个键关联的值进行循环访问。


2.flash.utils.Dictionary与Array,ArrayConllection,Object:

Dictionary类和Object唯一的区别在于:

Dictionary对象可以使用非字符串作为键值对的键。Dictionary类用于创建属性的动态集合,该集合使用全等运算符 (===) 对非原始对象键进行键比较。将对象用作键时,会使用对象的标识来查找对象,而不是使用在对象上调用 toString() 所返回的值.

无论用什么类型的变量作为键,都将被转换成字符串。同时,如果你使用了不同的对象作为键,都会北转换成字符串"[object Object]"作为键,因此而指向了同一个数据。
Dictionary类将没有这个限制,你可以将键设置成任何一种数据类型。

import mx.collections.ArrayCollection;
   import mx.controls.Alert;
   protected function label1_clickHandler(event:MouseEvent):void
   {
    var obj:Object=new Object();
    obj[1]=1;
    obj["name"]='abc';
    obj[new Object()]=new Number(3);
    for(var k:String in obj){
     trace(k);
     trace(" ----"+obj[k]);
    }
    
    // var arr:Array=new Array()[1,'abc',new Object(),new Array()]; //arr=null,不支持这种写法
    // var arrC:ArrayCollection=new ArrayCollection()[1,'abc',new Object(),new Array()]; //arrC=null
    var names:Array = new Array("John", "Jane", "David");
    var arr:Array=new Array();
    arr[0]=1;
    arr[1]='abc';
    arr[2]=new Object();
    arr[3]=new Array(); //空数组,没有值
    arr[4]=['zhangsan',23,'男']; //数组里面套数组
    
    var arrC:ArrayCollection=new ArrayCollection();
    /*arrC[0]=1; //不允许这样访问
    arrC[1]='abc';
    arrC[2]=new Object();
    arrC[3]=new Array();
    */
    arrC.addItem(1);
    arrC.addItem('abc');
    arrC.addItem(new Object());
    arrC.addItem(new Array());
    arrC.addItem(['zhangsan',23]);
    
    var dic:Dictionary=new Dictionary();
    
    for(var k in arr){
     trace(k);     //输出到Console   k:0,1,2,3
     trace(": "+arr[k]);  //输出值
    }
    
    for(var k  in arrC){
     trace(k);    //k: 0,1,2,3
     trace(": "+arrC[k]); //输出值
    } 
    
    trace('  ******************');
    for each(var val in arr){     //输出值
     trace(val);
    }
    for each(var val in arrC){     //输出值
     trace(val);
    }
    
    //可以将键设置成任何一种数据类型
    dic[1]=2;
    dic["abc"]="abcd";
    var o=new Object();
    dic[o]=new Object();
    var o2=new Object();
    dic[02]=new Array('zhangsan');
    
    for(var v in dic){
     trace(v);  //1,abc
     trace(dic[v]); //2,abcd
    }
   }

 

分享到:
评论

相关推荐

    PyPI 官网下载 | rcsb.utils.dictionary-0.53.tar.gz

    "rcsb.utils.dictionary"库的核心功能是提供了一种工具集,帮助用户处理与PDB相关的数据字典。这些工具通常用于解析、验证和操作PDB格式的数据,使研究人员能够更有效地理解和利用这些结构信息。例如,该库可能包含...

    DevExpress.Utils3

    4. X64:与X86类似,这个目录包含了适用于64位(x64)系统的DevExpress_Utils3.DLL文件或者其他相关文件。 在使用DevExpress.Utils3.DLL时,开发者需要了解.NET Framework或.NET Core的基本知识,并掌握如何在...

    DevExpress.Utils3.dll

    该dll为DevExpress控件的DevExpress.Utils3.dll

    axis2.jar 解决 org.apache.axis2.util.JavaUtils.callStackToString问题

    <Call Stack = DEBUG_FRAME = org.apache.axis2.util.JavaUtils.callStackToString(JavaUtils.java:564) DEBUG_FRAME = org.apache.axis2.description.ParameterIncludeImpl.debugParameterAdd(ParameterIncludeImpl...

    Python库 | oslo.utils-3.24.0.tar.gz

    1. **时间戳处理**:在日志记录、定时任务或者事件触发器中,oslo.utils.timeutils可以简化时间的处理,确保正确的时间戳记录和处理。 2. **配置管理**:在开发需要读取配置文件的程序时,利用oslo.utils.iniparser...

    PyPI 官网下载 | oslo.utils-3.42.1.tar.gz

    1. **时间与日期处理**:oslo.utils提供了许多与时间相关的辅助函数,如isotime()用于格式化时间戳为ISO8601标准字符串,timeutils.utcnow()则返回当前的UTC时间,还有parse_isotime()用于解析ISO8601格式的时间字符...

    OpenStack工具库类oslo.utils.zip

    oslo.utils 库提供了常用的工具库类的功能,例如编码,异常处理,字符串操作和时间处理。 标签:osloutils

    Bing.Utils:Bing.Utils工具库

    Nuget软件包包名称Nuget版本下载数Bing.Utils Bing.Utils.DateTime Bing.Utils.Drawing Bing.Utils.Http开发环境以及类库依赖以下是我们在项目开发和部署时使用的工具和组件,这个列表会经常更新。如果没有标注版本...

    Python库 | rcsb.utils.seq-0.60.tar.gz

    6. **兼容性与拓展性**:作为Python库,rcsb.utils.seq与Python生态系统中的其他库如NumPy、Pandas等有良好的兼容性,可以方便地与其他数据分析工具结合使用,进行更复杂的生物信息学分析。 在实际应用中,rcsb....

    PyPI 官网下载 | envoy.base.utils-0.0.11.tar.gz

    标题中的"PyPI 官网下载 | envoy.base.utils-0.0.11.tar.gz"表明这是一个在Python Package Index(PyPI)上发布的开源软件包。PyPI是Python社区广泛使用的资源库,开发者可以在这里发布自己的Python软件包,供其他...

    PyPI 官网下载 | zeam.utils.batch-0.2.tar.gz

    《PyPI官网下载 | zeam.utils.batch-0.2.tar.gz 深度解析》 在Python编程领域,PyPI(Python Package Index)是全球最大的Python软件仓库,它为开发者提供了一个集中发布和获取Python库的平台。"zeam.utils.batch-...

    Python库 | pyats.utils-21.7-cp37-cp37m-macosx_10_10_x86_64.whl

    2. **数据处理**:`pyats.utils.datastructs`提供了数据结构操作工具,如列表、字典的处理,以及数据验证等功能,使得数据处理更规范和高效。 3. **配置管理**:`pyats.utils.config`可以帮助开发者读取、解析和...

    PyPI 官网下载 | rcsb.utils.io-0.22.tar.gz

    因此,可以推测rcsb.utils.io这个库可能与生物信息学或者蛋白质结构分析有关,特别关注输入/输出(IO)操作。 在Python中,"utils"通常表示"实用工具",而"io"通常与文件操作和数据流处理有关。因此,rcsb.utils.io...

    Python库 | pyats.utils-21.5-cp36-cp36m-manylinux1_x86_64.whl

    - **数据处理**: `pyats.utils.datautils`包含了一系列数据操作工具,如解析配置文件、处理CSV数据、JSON序列化与反序列化等,方便对测试数据进行处理和分析。 - **文件操作**: `pyats.utils.fileutils`提供了文件...

    Python库 | antispoofing.utils-1.0.5.zip

    1. **面部识别与活体检测**:antispoofing.utils库可能包含了面部识别技术,能够检测用户是否为真实的人,而不是使用照片或3D模型来欺骗系统。这一特性对于在线身份验证和支付安全至关重要。 2. **图像分析与纹理...

    PyPI 官网下载 | rcsb.utils.seq-0.49.tar.gz

    本文将深入探讨一个名为"rcsb.utils.seq-0.49.tar.gz"的PyPI资源,了解其功能、用途以及与相关技术如Zookeeper、分布式系统和云原生的关系。 "rcsb.utils.seq-0.49.tar.gz"是一个在PyPI上发布的Python库,其版本号...

    PyPI 官网下载 | tiddlywebplugins.utils-1.1.tar.gz

    《PyPI官网下载:tiddlywebplugins.utils-1.1.tar.gz——探索Python库在分布式环境中的应用》 PyPI(Python Package Index)是Python社区的重要资源库,它为全球开发者提供了丰富的Python软件包。在本文中,我们将...

    Python库 | pyats.utils-19.6-cp36-cp36m-macosx_10_10_x86_64.whl

    《Python库pyats.utils详解与应用》 在Python的生态系统中,存在众多强大的库,它们为开发者提供了丰富的功能,极大地提升了开发效率。今天我们要聚焦于一个特定的库——pyats.utils,它是一个专为自动化测试服务的...

    java3d applet 入门小案例

    import com.sun.j3d.utils.applet.MainFrame; import java.awt.BorderLayout; import com.sun.j3d.utils.universe.SimpleUniverse; import javax.media.j3d.*; import javax.vecmath.*; import ...

Global site tag (gtag.js) - Google Analytics