java中的sort方法排序问题

例如Collections.sort(l1)//l1是LinkedList对象就问下,它是不是要去调用Camparaable接口中的compareTo方法才能进行排序... 例如Collections.sort(l1)//l1是LinkedList对象

就问下,它是不是要去调用Camparaable接口中的compareTo方法才能进行排序
展开
 我来答
历盆郁7
推荐于2017-09-19 · TA获得超过4277个赞
知道大有可为答主
回答量:1795
采纳率:100%
帮助的人:923万
展开全部
这个是看你的业务的,给你个例子,你自己对照下
List data = new ArrayList();
data.add(1);
data.add(3);
data.add(2);

//默认的,升序

Collections.sort(data);
System.out.println(data);

// 实现了compareTo方法,实现降序

Collections.sort(data, new Comparator<Integer>() {
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
System.out.println(data);
更多追问追答
追问
哦,意思是都得调用sort()方法,但是需要换其他排序时就重写这个方法?
追答
1.jdk里面提供的一般都是最基本,最简单的方法,他不可能针对所有的需求都提供一个方法,

2.但是需要换其他排序时就重写这个方法?
你自己开发个方法做排序也行,只是jdk里提供的Collections.sort()的接口,你用他会方便点
百度网友0ae147d
2012-08-23 · 超过13用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:40.8万
展开全部
如果你的LinkedList里边放的是一般简单类型的对象无所谓,如果放的是自己定义的对象的话必须重写compareTo方法,否则会按照对象的hashcode乱排序
追问
嗯,谢谢,看了你们的,我也知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lizi8381173
2012-08-14 · TA获得超过9230个赞
知道小有建树答主
回答量:565
采纳率:0%
帮助的人:221万
展开全部
是的,所以你要实现Cmmparable接口 重写compare To方法,不然就会出现异常 异常错误是类型无法转换,没有实现Commparable接口
追问
嗯,谢谢,看了你们的,我也知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lshzhxx1
2012-09-19
知道答主
回答量:2
采纳率:0%
帮助的人:3095
展开全部
柱子是2 b
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式