Java入門程式設計師必看:給陣列進行排序

你亦不是我的救贖發表於2020-10-03

現在有一個錄取了40名學生分數的int型別的陣列,我們要如何將他們的分數進行從大到小的排序?

Java提供一個排序方法:Arrays.sort
首先,在java中匯入Arrays包

import java.util.Arrays

然後找到我們需要排序的陣列,用Arrays.sort方法排序即可

int [] score = new int score[40];
Arrays.sort(score);

這裡score陣列中我們預設有值。
這時候利用for循壞輸出score陣列,

for(int i =0;i<=score.lenght;i++){
	Sysout(score[i]+" ");
}

你會發現陣列中的值已經從小到大重新排列了一遍,也就
是說,此時score[39]的值會是這個成績陣列中的最大值,而score[0]的值則為這個成績陣列中的最小值

Arrays.sort方法只提供從小到大的升序排列,如果我們需要從大到小|的降序排列,那又該怎麼做呢?

我們new一個新陣列來接收這個老陣列,

int [] score2 =new score2[40]; 

利用for循壞,將舊陣列的資料迴圈輸入給我們新建的score2陣列

for(int i=0,j=score.length-1;i<=score2.length;i++,j--){
	score2[i]=score[j];
}

此時輸出新陣列

for(int i =0;i<=score2.lenght;i++){
	Sysout(score2[i]+" ");
}

此時我們已經將這個成績陣列進行了從大到小的排列。

需要注意的是,Java本身並不提供從大到小的降序排列方法,需要程式設計師自己去想辦法。

關於String型別陣列的排序
int型別的陣列可以用Arrays.sort方法進行從小到大的升序排列,那麼String可以嗎?
可以的。
String型別的陣列利用Arrays.sort方法排序,它會根據26個英文字母來進行升序排列。
具體的大家自己去實踐,參考上文。

你好,
我也是剛開始學習Java的程式猿,點個關注,一起學習!

相關文章