Array と BitArray の違いは何ですか。

MAXScript に関する質問と回答 > Array と BitArray の違いは何ですか。

MAXScript の配列には任意の数の要素が格納でき、各要素は、整数、浮動小数点、文字列、Point3 値、カラー、あるいは他の配列のどれでもかまいません。

一方 BitArray に格納できるのは、1 つのタイプの情報のみです。名前が示すように、このタイプはシングル ビット、2 進数です。ビットは (1, true) に設定されるか、(0, false) に設定されないかのどちらかです。つまり、BitArray に保存できるのは、バイナリ情報、すなわち true または false 値を表す任意の数のビットだけです。bitArray は 1 バイト内に 8 つの値を保存できるので非常にメモリ効率が高いのですが、通常の配列の場合、1 つの要素が 1 つの値を保存するために数バイトが必要になります。

選択状態などの面のプロパティを取得および設定する場合には、bitArray が非常に有用です。

bitArray を Array に変換したり、true および false 値しか格納していない Array を bitArray に変換することが可能です。

注:

通常の Array に追加された要素よりも bitArray に追加された要素の方が低速になる傾向があります。まず、bitArray を適切なサイズに事前に定義し、インデックスで要素を設定すると非常に高速に処理できます。

関連事項