Array

説明

バリアントの動的配列です。

5つの要素からなる配列を初期化する場合、次のように指定します。

Array myArray = Array(5);

FlexSimの配列は1始まりの配列です。これは、最初の配列要素へはインデックス1を介してアクセスするということです。

double myVal = myArray[1]; // 1st element
myArray[2] = 5; // 2nd element
myArray[4] = 3.2; // 4th element

Arrayはバリアントの配列なので、各要素をバリアントが保持できるものに設定することができます。たとえば、数値、文字列ツリーノード、もしくは配列などです。

myArray[2] = "Hello World";
myArray[3] = 5.7;
myArray[4] = Model.find("Source1");
myArray[5] = Array(10); // now you can access myArray[5][2]

また、配列には初期化リストを入れることもできます。

Array myArray = [4.5, "Hello World", model(), ["Another", "Array"]];

デフォルトでは、配列は共有参照として渡されます。つまり、1つの配列変数を別の配列変数に設定した場合、その変数を最初の配列に対する参照として設定したのであり、最初の配列をコピーしたわけではありません。そのため、一方の変数の参照配列データを変更した場合は両方の変数が変更されます。

Array array1 = ["Hello", "World"];
Array array2 = array1;
array2[1] = "Goodbye"; // both array1 and array2 are ["Goodbye", "World"]

配列のディープコピーを行うには、clone()メソッドを使用します。

Array array1 = ["Hello", "World"];
Array array2 = array1.clone();
array2[1] = "Goodbye"; // array2 is ["Goodbye", "World"], array1 is unchanged.

プロパティ

length 配列の要素数。

メソッド

append 配列の最後に別の配列を付加します。
clone 配列のコピーを作成します。
concat 配列の最後に別の配列を付加することで新しい配列を作成します。
fill 配列に値を入力します。
indexOf 配列の要素を検索してそのインデックスを返します。
join 各要素を連結して文字列を作ります。
pop 配列の最後の要素を削除してその削除要素を返します。
push 配列の最後に新しい要素を追加します。
reverse 配列要素の順序を逆転させます。
shift 配列の最初の要素を削除してその削除要素を返します。
slice 配列を部分的にコピーします。
splice 配列の要素を追加/削除します。
unshift 配列の最初に新しい要素を追加します。

コンストラクター

Array 新しい配列を指定サイズで作成します。

演算子

!= 配列と別の配列が等しくないか比較します。
[] 要素を取得または設定します。
== 配列を別の配列と比較します。

詳細

削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.length

int length

説明

配列の要素数。

int numElements = myArray.length;

また、配列のサイズを設定する際にも使用できます。


Array myArray = [1,2,3,4,5];
myArray.length = 3;  // [1,2,3]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.append()

Array append( Array otherArray )

パラメータ

otherArray 対象の配列に付加する配列。

戻り値

Array 変更された配列。

説明

配列の最後に別の配列を付加します。


Array myArray = [1,2,3,4,5];
myArray.append([7,8,9]);   //[1,2,3,4,5,7,8,9]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.clone()

Array clone( )

戻り値

Array 配列のコピー。

説明

配列のコピーを作成します。


Array myArray = [1,2,3,4,5];
Array copy = myArray.clone();
myArray.push(6);

// myArray - [1,2,3,4,5,6]
// copy - [1,2,3,4,5]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.concat()

Array concat( Array otherArray )

パラメータ

対象の配列に連結する配列。

戻り値

Array 配列を連結することで作成された新しい配列。

説明

配列の最後に別の配列を付加することで新しい配列を作成します。


Array concatArray = myArray.concat([7,8,9]);

// myArray - [1,2,3,4,5]
// concatArray - [1,2,3,4,5,7,8,9]
      

Appendメソッドに似ていますが、Appendメソッドは元となる配列を変更する一方でconcatは新しい配列を作成します。

削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.fill()

Array fill( Variant val )

パラメータ

val その時点で各要素が保持している値。

戻り値

Array 変更された配列。

説明

配列に値を入力します。

このコードは各要素を0に設定します。


Array myArray = [1,2,3,4,5];
myArray.fill(0);  // [0,0,0,0,0]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.indexOf()

int indexOf( Variant val )

パラメータ

val 検索する要素。

戻り値

int 配列において最初に発生する要素のインデックス。

説明

配列の要素を検索してそのインデックスを返します。

配列に要素が見つからない場合、-1を返します。

Array myArray = ["Apple","Orange","Mango","Pear"];
int index = myArray.indexOf("Mango");  // 3
int index = myArray.indexOf(2); // -1
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.join()

string join( string separator = 0 )

パラメータ

separator 連結する要素の間に配置される文字列値。

戻り値

string セパレータによって区切られた連結要素の文字列。

説明

各要素を連結して文字列を作ります。


Array myArray = [1,2,3,4,5];
string joined = myArray.join("-");  // "1-2-3-4-5"
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.pop()

Variant pop( )

戻り値

Variant 配列の最後の要素。

説明

配列の最後の要素を削除してその削除要素を返します。


Array myArray = [1,2,3,4,5];
Variant lastVal = myArray.pop();  // 5

//myArray - [1,2,3,4]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.push()

Array push( Variant val )

パラメータ

val 新しい配列の要素。

戻り値

Array 変更された配列。

説明

配列の最後に新しい要素を追加します。


Array myArray = [1,2,3,4,5];
myArray.push(6);  // [1,2,3,4,5,6]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.reverse()

Array reverse( )

戻り値

Array 変更された配列。

説明

配列要素の順序を逆転させます。


Array myArray = [1,2,3,4,5];
myArray.reverse();  // [5,4,3,2,1]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.shift()

Variant shift( )

戻り値

Variant 配列の最初の要素。

説明

配列の最初の要素を削除してその削除要素を返します。


Array myArray = [1,2,3,4,5];
Variant firstVal = myArray.shift();  // 1

//myArray - [2,3,4,5]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.slice()

Array slice( int fromIndex , int toIndex )

パラメータ

fromIndex 選択肢における最初の要素のインデックス。
toIndex 選択肢における最終の要素に続く要素のインデックス。

戻り値

Array 配列の部分的なコピー。

説明

配列を部分的にコピーします。


Array myArray = [1,2,3,4,5];
Array copy = myArray.slice(2, 5);  // [2,3,4]

//myArray - [1,2,3,4,5]
      

fromIndexで始まりtoIndexで終わる(ただしtoIndexは含まない)要素を選択します。

削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.splice()

Array splice( int fromIndex , int count )
Array splice( int fromIndex , int count , Array insert )

パラメータ

fromIndex 要素が削除された上で追加される位置のインデックス。
count 削除する要素数。
insert fromIndexで追加される要素の配列。

戻り値

Array 変更された配列。

説明

配列の要素を追加/削除します。


Array cars = ["Volvo", "BMW", "Audi", "Ford"];
cars.splice(2, 2); 			// ["Volvo", "Ford"]
cars.splice(3, 1, ["Lotus", "Kia"]);  	// ["Volvo", "BMW", "Lotus", "Kia", "Ford"]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.unshift()

Array unshift( Variant val )

パラメータ

val 新しい配列の要素。

戻り値

Array 変更された配列。

説明

配列の最初に新しい要素を追加します。


Array myArray = [1,2,3,4,5];
myArray.unshift(6);  // [6,1,2,3,4,5]
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Arrayコンストラクター

Array( int size )

パラメータ

size 新しい配列のサイズ。

説明

新しい配列を指定サイズで作成します。

Array myArray = Array(5); // [,,,,]
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.operator !=

int operator !=( Array other )

パラメータ

other 配列を比較する別の配列。

戻り値

int 両配列の全要素が同じであれば偽(0)。それ以外では真(1)。

説明

配列と別の配列が等しくないか比較します。

Array myArray = [1,2,3,4,5];
Array otherArray1 = [1,2,3,4,5];
Array otherArray2 = [1,2,4,5];
myArray != otherArray1; // false
myArray != otherArray2; // true
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.operator []

Variant operator []( int index )

パラメータ

index 要素のインデックス

戻り値

Variant 配列の要素。

説明

要素を取得または設定します。


Array myArray = [1,2,3,4,5];
myArray[2] = 6;              // [1,6,3,4,5]
Variant value = myArray[3];  // 3
      
削除を行わないでください。doc.flexsim.comのアンカーが修正されます。

Array.operator ==

int operator ==( Array other )

パラメータ

other 配列を比較する別の配列。

戻り値

int 両配列の全要素が同じであれば真(1)。それ以外では偽(0)。

説明

配列を別の配列と比較します。

Array myArray = [1,2,3,4,5];
Array otherArray1 = [1,2,3,4,5];
Array otherArray2 = [1,2,4,5];
myArray == otherArray1; // true
myArray == otherArray2; // false