关于AS3中Vector的sort排序

2023-01-31 04:01:46 vector 排序 AS3

 先上2个代码


private function sortRank(x:RankPlayerModel, y:RankPlayerModel):Number
  {
   var lastNameSort:Number = sortNum(x.value, y.value);
   if (lastNameSort != 0){
    return lastNameSort;
   }
   else{
    return sortNum(x.value, y.value);
   }
  }


注意 :

return sortNum(x.value, y.value);

这是 else 中的一句 : 这一句的理解 是 可以 用第二个字段继续比较 如:

return sortNum(x.money, y.money);

依次类推...第三个比较字段 , 第四个比较字段...


private function sortNum(x:Number, y:Number):Number{
 if (x < y){
  return 1;
 }
 else if (x > y){
  return -1;
 }
 else{
  return 0;
 }
}


调用 $back.sort(sortRank);  注 : $back 是 vector.<RankPlayerModel>类型的

因为  Vector 比 Array 的 性能要高 , 但是 Vector 没有 Array 的sorton功能 , 那 只有自己  写一个 排序的 方法了

相关文章