【问题标题】:Map/Dictionary which limit entries size in ActionScript 3限制 ActionScript 3 中条目大小的映射/字典
【发布时间】:2011-06-25 06:33:48
【问题描述】:

在 Java 中,这可以通过 LinkedHashMap 删除最旧的条目/最旧的访问条目来完成。 ActionScript 3 中的任何等效类?

谢谢。

【问题讨论】:

    标签: actionscript-3 collections map hashtable


    【解决方案1】:

    不,很遗憾没有。你可以轻松实现一个,如果我要实现它,我会扩展 Proxy object 它会给你相当大的灵活性。

    更新:

    此更新是为了澄清 OP 评论中的问题。评论是 “这将是一个新类扩展 Proxy 而不是 Dictionary/etc?”

    是的,你会想要扩展 Proxy,这样做的原因是它允许你覆盖几个神奇的方法来实现你的目标。特别是在您的情况下,您可以覆盖setProperty(name:*, value:*):void。每次在您的类上设置属性时都会调用此方法(由您提供设置实现),因此您可以计算在给定时间设置的值的数量。如果您扩展 Object 或字典,则您无权访问它,并且知道何时设置新属性。

    如果您改为扩展对象,则需要依靠接口来实现您的目标,需要用户通过方法调用来设置属性。

    代理实现仍允许您像这样设置属性:

    myObj.foo = 'bar';
    myObj["foo"] = 'bar';
    

    方法实现(扩展对象)如下所示:

    myObject.setVal("name", "val");
    

    【讨论】:

    • 这将是一个新类扩展代理而不是字典/等?我是 ActionScript 的新手,如果有人创建了一个准备就绪的类来共享,我将非常感激......
    猜你喜欢
    • 2011-01-24
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    相关资源
    最近更新 更多