Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1101236
  • 博文数量: 60
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 2500
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-19 19:47
文章分类

全部博文(60)

文章存档

2009年(6)

2008年(54)

我的朋友

分类: Java

2008-06-23 19:47:19


以下是代码片段:
//一维数组的排序
// type 参数
// 0 字母顺序(默认)
// 1 大小 比较适合数字数组排序
// 2 拼音 适合中文数组
// 3 乱序 有些时候要故意打乱顺序,呵呵
// 4 带搜索 str 为要搜索的字符串 匹配的元素排在前面
function Array.prototype.SortBy(type,str)
{
switch (type)
{
     case 0:this.sort(); break;
     case 1:this.sort(function(a,b){ return a-b; }); break;
     case 2:this.sort(function(a,b){ return a.localeCompare(b) }); break;
     case 3:this.sort(function(){ return Math.random()>0.5?-1:1; }); break;
     case 4:this.sort(function(a,b){ return a.indexOf(str)==-1?1:-1; }); break;
     default:this.sort();
    }
}
-----------
根据需要和y0h提示我把
case 2:this.sort(function(a,b){ return a.localeCompare(b) }); break;
改成
case 2:this.sort(function(a,b){
     if(a.length>b.length)return 1;
     else if(a.length==b.length)return a.localeCompare(b);
     else return -1;
}); break;

阅读(1044) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~