読者です 読者をやめる 読者になる 読者になる

Flash制作講座フラッシュ制作講習

FLASH制作からActionScriptによるFlashコンテンツ制作のためのフラッシュ制作講座

AS3.0配列のArray/{}/Vector

ActionScriptで配列クラスはArrayが使用されてきましたが、AS3.0ではVectorクラスが追加されています。


それぞれの配列の特性も踏まえ、ActionScriptの配列について整理してみましょう。


■Arrayクラスを使用した場合

var arr:Array = new Array(53, 22, 96,3, 61);
var arrt:Array = new Array("かば", "ゴリラ", "いのしし");

クラスファイルになるので、new Arrayで新規にインスタンスを作成します。

またデータ型を順番に入れる必要はなく、どこにでも配列値を配置することが可能です。


■配列演算子を使用した場合

配列演算子を使用した場合、変数の型を指定するだけで配列を使用することができます。

var num:Array = [82, 6, 25, 1, 205];
var animal:Array = ["ゴリラ", "かば", "いのしし"];


【Arrayクラスに継承されるパブリックメソッドの一部】

・join 値を指定セパレータで結合しストリングを返す
・push 配列最後に値を追加して、配列の個数を返す
・sort 配列のソート
・length 配列の個数を返す
・concat 配列同士を連結して、新たな配列として返す



Vectorクラスを使用した場合

新たに追加されたVectorクラスは、ベクターにアクセスして配列値の操作が可能になります。ベクターとは配列エレメントが同じデータ型の配列になります。Arrayとの違いは順番にエレメントを格納しないといけない点と、Array配列と比べると処理速度が早い点が挙げられるようです。

var vec : Vector.< String > = new Vector.< String >();

vec[0] = "ゴリラ";
vec[1] = "オラウータン";
vec[2] = "チンパンジー";

となり、基本型は Vector.<型> となります。

また、配列演算子を使用する場合は、

var vec : Vector.< String > = new Vector.< String >([1,3,7]);

のようになります。


■{}(ブレイス/中括弧)を使用した場合

{}ブレイスを使用した配列は、連想配列の操作に使用されます。

var char:Object = {type:"GORIRA", weight:89, place:"Africa"};

配列エレメントの参照の仕方は、上の例の場合、

var name:String = char.type;

となります。


■多次元配列

配列は何十次元にも多重化することが可能です。

var animal:Array = [["ゴリラ","かば", "いのしし"], ["u-ho", "zzz","hihi"], ["\500","\250", "300"]]
var zoo:String = animal [1][2]; // "hihi"が抽出