更新時間:2020-08-03 15:05:57 來源:動力節點 瀏覽4329次
Arrays.sort()方法雖然功能強大,但是在平常的使用中難免會出現各種情況使得其無法滿足我們的需求,這個時候就該用到:
Arrays.sort(a,fromIndex,toIndex,c);
這種用法了
先對方法中的各項參數進行解釋:
a——需要進行排序的對象
fromIndex——排序進行的起始位置
toIndex——排序的終止位置
c——自定義的排序規則
實現的代碼如下:
import?java.util.Arrays;
import?java.util.Comparator;
import?java.util.Scanner;
//定義類a
class?a{
????int?n;
}
//定義類cmp,制定排序規則
class?cmp?implements?Comparator{
????public?int?compare(a?A,?a?B)?{
????????if(A.n?>?B.n)return?-1;
????????if(A.n?==?B.n)return?0;
????????if(A.n?<?B.n)return?1;
????????return?0;
????}
}
public?class?Main{
????public?static?void?main(String?args[]){
????????Scanner?sc?=?new?Scanner(System.in);
????????while(sc.hasNext()){
????????????int?n?=?sc.nextInt();
????????????a?t[]?=?new?a?[n];
????????????for(int?i?=?0;i?<?n;i++){
????????????????t[i]?=?new?a();//為類分配內存必不可少
????????????????t[i].n?=?sc.nextInt();
????????????}
????????????Arrays.sort(t,0,n,new?cmp());
????????????for(int?i?=?0;i?<?n;i++)
????????????????System.out.print(t[i].n+"?");
????????????System.out.println();
????????}
????}
}
它的效果是對含有一個int型成員變量n的類a的數組按n的大小進行降序排序
在上面給出的代碼中,最為關鍵的地方在于這一段:
//定義類cmp,制定排序規則
class cmp implements Comparator{
public int compare(a A, a B) {
if(A.n > B.n)return -1;
if(A.n == B.n)return 0;
if(A.n < B.n)return 1;
return 0;
}
}
在compare(
PS:如果方法的應用對象是類,那么對于每一個對象來說,這一段都是必不可少的:
t[i] = new a();//為類分配內存必不可少
以上就是動力節點java培訓機構的小編針對“Java中的arrays類的sort方法”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習