java數(shù)組排序sort原理 Java中對(duì)數(shù)組升序排列用Arrays.sort( )方法,那降序排列用什么方法?
Java中對(duì)數(shù)組升序排列用Arrays.sort( )方法,那降序排列用什么方法?按照升序排列,如果對(duì)于實(shí)現(xiàn)了comparable接口的類來(lái)說(shuō),則是在執(zhí)行int compareTo(Object o)
Java中對(duì)數(shù)組升序排列用Arrays.sort( )方法,那降序排列用什么方法?
按照升序排列,如果對(duì)于實(shí)現(xiàn)了comparable接口的類來(lái)說(shuō),則是在執(zhí)行int compareTo(Object o)方法,返回為1的放在后面,如A類實(shí)現(xiàn)了comparable接口,A類有a1,a2兩個(gè)對(duì)象,如果a1.compareTo(a2)的值為1,則表示a1>a2,sort之后,為 a2,a1
為什么java的arrays類的sort方法對(duì)對(duì)象數(shù)組采用合并排序,而對(duì)基本類型數(shù)組卻采用快速排序?
java中的arrays類的sort方法對(duì)于基本數(shù)據(jù)類型默認(rèn)的是進(jìn)行升序排列,比如:sort(int [] arr) 、sort(double [] arr)等等;
還有的時(shí)可以限制范圍排序,以下是在JDK的API中找到的:
從圖中可以看到在倒數(shù)第二和第三行中對(duì)于對(duì)象數(shù)組的排序也是默認(rèn)升序,但在輸入這行代碼之前要完成一個(gè)對(duì)你所要排序的對(duì)象數(shù)組的comparable的接口。以它為標(biāo)準(zhǔn)來(lái)進(jìn)行排序,具體怎么做看下圖: