ActionScript3.0教程04:數據類型
ActionScript3.0教程04:數據類型
“數據類型”用來定義一組值。
例如,Boolean 數據類型所定義的一組值中僅包含兩個值:true 和 false。
除了 Boolean 數據類型外,ActionScript 3.0 還定義了其它幾個常用的數據
類型,如 String、Number 和 Array。
您可以使用類或接口來自定義一組值,從而定義自己
的數據類型。
ActionScript 3.0 中的所有值均是對象,而與它們是基元值還是復雜值無關。
“基元值”是一個屬于下列數據類型之一的值:Boolean、int、Number、String 和 uint。
基元值的處理速度通常比復雜值的處理速度快,因為 ActionScript 按照一種盡可能優化內
存和提高速度的特殊方式來存儲基元值。
“復雜值”是指基元值以外的值。定義復雜值的集合的數據類型包括:Array、Date、Error、
Function、 RegExp、XML 和 XMLList。
許多編程語言都區分基元值及其包裝對象。例如,Java 中有一個 int 基元值和一個包裝它的
java.lang.Integer 類。Java 基元值不是對象,但它們的包裝是對象,這使得基元值對于某些
運算非常有用,而包裝對象則更適合于其它運算。在 ActionScript 3.0 中,出于實用的目
的,不對基元值及其包裝對象加以區分。所有的值(甚至基元值)都是對象。Flash Player
將這些基元類型視為特例 — 它們的'行為與對象相似,但是不需要創建對象所涉及的正常開
銷。這意味著下面的兩行代碼是等效的:
var someInt:int = 3;
var someInt:int = new int(3);
上面列出的所有基元數據類型和復雜數據類型都是由 ActionScript 3.0 核心類定義的。通過
ActionScript 3.0 核心類,可以使用字面值(而非 new 運算符)創建對象。例如,可以使用
字面值或 Array 類的構造函數來創建數組,如下所示:
var someArray:Array = [1, 2, 3]; // 字面值
var someArray:Array = new Array(1,2,3); // Array 構造函數
注意
關注技術細節的讀者會發現,ActionScript 在內部將基元值作為不可改變的對象進行存儲。這意
味著按引用傳遞與按值傳遞同樣有效。這可以減少內存的使用量并提高執行速度,因為引用通常
比值本身小得多。
【ActionScript3.0教程04:數據類型】相關文章: