所以我正在创建一个Flash游戏,我将分数保存在sharedObject中。我已成功将分数保存到数组中。这是代码:
import flash.net.SharedObject;
var shared:SharedObject = SharedObject.getLocal("sharedmean");
var tempArray:Array = new Array();
if (shared.data.score) {
tempArray = shared.data.score;
}
tempArray.push(scoreTotal);
shared.data.score = tempArray;
trace(tempArray);
shared.flush();
shared.close();
并且跟踪结果是:
500,100,0,100,100,0,300
我创建了高分文本框,并希望显示该数组中的3个最大值。 我希望文本框显示:
Highscore 1: 500
Highscore 2: 300
Highscore 3: 100
我该怎么办?谢谢。
答案 0 :(得分:1)
sort
方法根据其参数对数组中的值进行排序。
在这里,我们使用Array.NUMERIC
参数来按数值排序。我们还推送Array.DESCENDING
参数从最大值到最小值排序值。这样可以更轻松地访问前三个值:
tempArray.sort(Array.NUMERIC | Array.DESCENDING);
//don't forget to push " | " between parameters
现在
textField.text= "Highscore 1:"+tempArray[0]+"\n Highscore 2:"+tempArray[1]+"\n Highscore 3:"+tempArray[2];
我这是有帮助的!
答案 1 :(得分:0)
快速谷歌搜索可以获得以下
tempArray.sort(Array.NUMERIC);