A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李龙 黑马帝   /  2011-8-1 12:52  /  2299 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

可能有一些是习惯问题,我们排序的时候总是喜欢用插入排序、冒泡排序、选择排序等各种算法。Arrays.sort()也可以排序,为什么我很少看到有人用
  1. Arrays.sort(int[] a);
复制代码
给数组做排序的呢?

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

5 个回复

倒序浏览
黑马网友  发表于 2011-8-1 13:26:23
沙发

回复 楼主 的帖子

想了解Arrays的sort()方法,可以看下它的源码,看它到底是怎么实现的喔!

评分

参与人数 1技术分 +1 收起 理由
admin + 1 对的,想知道怎么做,必须先去了解!

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-8-1 13:26:51
藤椅
Arrays的排序方法只针对原声数据类型。没有对应用类型的排序。就是说没办法对对象数组排序。
回复 使用道具 举报
黑马网友  发表于 2011-8-1 16:26:39
板凳

回复 藤椅 的帖子

什么意思?可以Arrays.sort(Object[] a)呀;用这个不是很方便吗?
回复 使用道具 举报
黑马网友  发表于 2011-8-1 21:05:31
报纸
Arrays.sort(Object[] a) 一般不能达到程序员需求的对象排序结果,如果对对象数组做出有需求的排序 那么需要使用sort(T[] a, Comparator<? super T> c)  既定义一个 Comparator比较器   根据程序员自己实现的比较器算法来比较对象,达到真正需要的结果

评分

参与人数 1技术分 +2 收起 理由
admin + 2

查看全部评分

回复 使用道具 举报
Sort函数给ArrayList数组排序,在使用ArrayList之前,务必要引用Collections命名空间

[code=java]using System.Collections;
static void Main()
{

ArrayList arrList = new ArrayList();//定义一个数组列表,并添加元素

arrList.Add(7);
arrList.Add(1);
arrList.Add(5);
arrList.Add(0);

Console.WriteLine("\n排序前的数组:");//用于换行

foreach (int i in arrList)   //打印排序前的数组
    Console.Write(i.ToString() + " ");

arrList.Sort();//对数组进行排序,默认从小到大

Console.WriteLine("\n排序后的数组:");//用于换行

foreach (int i in arrList)   //打印排序前的数组
    Console.Write(i.ToString() + " ");

//以上是给数组从小到厅排序,如果要从大到小呢?

arrList.Reverse();//可以用用Reversr()这个方法给将上面的从小到大翻转过来

Console.WriteLine("\n翻转后的数组:");//用于换行
foreach (int i in arrList)   //打印排序前的数组
    Console.Write(i.ToString() + " ");

}[/code]
[ 本帖最后由 沈雷 于 2011-08-04  14:49 编辑 ]

评分

参与人数 1技术分 +2 收起 理由
老罗 + 2 我很赞同

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马