私はActionScript3.0で2つのマトリックス(またはおそらく多く)を追加しています。
今私の問題は、このような配列にインデックスを追加するにはどうすればよいですか?
array1[1,2,3,4] + array2[2,4,5,6] = answer[3,6,8,10]
私はActionScript3.0で2つのマトリックス(またはおそらく多く)を追加しています。
今私の問題は、このような配列にインデックスを追加するにはどうすればよいですか?
array1[1,2,3,4] + array2[2,4,5,6] = answer[3,6,8,10]
それは可能ではありません。配列は、1つのインデックスを介したアクセスのみを許可します。このためには、自分でメソッドを作成する必要があります。ただし、0、1、2、4、5などの回答でnullが参照されることに注意してください。
この関数は、渡されるすべての配列を合計します。
function sumOfArrays(...args):Array
{
var sum:Array = [];
var arrays:Array = [];
var longestArrayLength:uint = 0;
for (var i:int = 0, n:int = args.length; i < n; i++)
{
if (args[i] is Array)
{
arrays.push(args[i]);
longestArrayLength = args[i].length > longestArrayLength ? args[i].length : longestArrayLength;
}
}
for (var j:int = 0; j < longestArrayLength; j++)
{
sum[j] = 0;
for (i = 0; i < n; i++)
{
sum[j] += isNaN(arrays[i][j]) ? 0 : arrays[i][j];
}
}
return sum;
}
次のように使用できます。
var sum:Array = sumOfArrays(array1, array2);