我需要对我的数组中的所有偶数值求和,所以这里有一个例子:
Array
(
[0] => 1
[1] => 1
[2] => 1
[3] => 1
[4] => 4
[5] => 6
[6] => 6
)
寻找一种方法来对所有相同值进行求和:
Array
(
[1] => 4
[4] => 1
[6] => 2
)
有什么想法吗?
答案 0 :(得分:2)
var buckets:Object = {};
var data:Array = [1, 1, 1, 1, 4, 6, 6];
for(var i=0; i<data.length; ++i) {
if(!buckets[data[i]]) {
buckets[data[i]] = 1;
} else {
buckets[data[i]]++;
}
}
trace(buckets);
答案 1 :(得分:1)
试试这个:
var sum:uint = 0; //Setting the sum value to 0;
for(var i:uint = 0; i < nameOfArray.length; i++){ //Loops trough the array
if(nameOfArray[i] % 2 == 0 ){ //If the number is an even number
sum+=nameOfArray[i]; //Add that even number to the sum variable
}
}
trace(sum) // Prints out the sum
答案 2 :(得分:0)
您可以制作地图&amp;循环遍历您的数组,将值添加到您的地图中。如果你不知道地图是什么,它基本上是一个集合类型。它是使用一对,使用一个独特的密钥和&amp;创建的。与之相关的值。在您的情况下,唯一键将是数组中的数字值,值将是它出现的次数(频率)。