16

Vector.<>の代わりに使用することの長所と短所は何arrayですか?

4

5 に答える 5

19

Adobeのドキュメントページから:

その制限の結果として、Vectorには、要素がすべて単一クラスのインスタンスであるArrayインスタンスに比べて2つの主な利点があります。

  • パフォーマンス:配列要素のアクセスと反復は、配列を使用する場合よりもベクターインスタンスを使用する場合の方がはるかに高速です。
  • タイプの安全性:厳密モードでは、コンパイラーは、ベクターに誤ったデータ型の値を割り当てたり、ベクターから値を読み取るときに誤ったデータ型を予期したりするなど、データ型エラーを識別できます。ただし、push()メソッドまたはunshift()メソッドを使用してVectorに値を追加する場合、引数のデータ型はコンパイル時にチェックされず、実行時にチェックされることに注意してください。
于 2009-07-15T09:41:19.553 に答える
2

長所:ベクトルは配列よりも高速です-例:これを参照してください:FlashPlayer10を使用したより高速なJPEGエンコーディング

対照的に:VectorにはFP10が必要であり、http://riastats.com/によるとユーザーの約20%がまだFP9を使用しています。

于 2009-07-15T12:34:20.660 に答える
2

ベクトルはより高速です。シーケンシャルイテレーションの場合、最速のものはリンクリストのようですが

ベクトルはビットマップ操作にも役立ちます(BitmapData.setVector、BitmapData.lockおよびunlockもチェックしてください)。

于 2009-07-23T10:20:36.137 に答える
1

コメントで前述したリンクリストの例は、奇数ノードをスキップするため、同じデータの半分の量しか反復しないため、誤って記述されています。彼がとても素晴らしい結果を得るのも不思議ではありません。正しいコードでもより速くなるかもしれませんが、同じ%の違いではありません。ループは、current = current.nextを1回(ループ内とループ条件の両方で)設定しすぎて、その動作を引き起こします。

于 2009-08-12T08:36:38.967 に答える
0

フラッシュプレーヤーの浸透ウェブサイトによると、それは少し高いです。85%前後

これがソースです

于 2009-07-15T12:55:30.040 に答える