㈠ java中對數組升序排列用Arrays.sort( )方法,那降序排列用什麼方法
Arrays.sort( )方法緩槐一個參數默認是升序排列,你要降序排列第一種方法調用重載的2個參數的Arrays.sort( T[]a,Comaparator c)才行薯哪租,第二個參數需要自定義一個比較器數兆類實現Comaparator介面,根據需要重新compare方法。
第二種方法先進行升序排列,再調用Arrays的asList方法轉換成數組,然後調用Collections的reverse方法倒序排列,最後調用Collection的toArray方法轉換成數組。
㈡ java怎麼讓數組的數字從大到小排序
將數字從大到小排序的方法:
例如簡一點的冒泡排序,將第一個數字和後面的數字逐個比較大小,如果小於,則互換位置,大於則不動。此時,第一個數為數組中的最大數。然後再將第二個數與後面的數逐個比較,以次類推。
示例代碼如下:
publicclassTest{
publicstaticvoidmain(String[]args){
int[]array={12,3,1254,235,435,236,25,34,23};
inttemp;
for(inti=0;i<array.length;i++){
for(intj=i+1;j<array.length;j++){
if(array[i]<array[j]){
temp=array[i];
array[i]=array[j];
array[j]=temp; //兩個數交換位置
}
}
}
for(inti=0;i<array.length;i++){
System.out.print(array[i]+"");
}
}
}
數組對於每一門編程語言來說都是重要的數據結構之一,當然不同語言對數組的實現及處理也不盡相同。
Java 語言中提供的數組是用來存儲固定大小的同類型元素。
你可以聲明一個數組變數,如 numbers[100] 來代替直接聲明 100 個獨立變數 number0,number1,....,number99
(2)java升序排列數組擴展閱讀
Java中利用數組進行數字排序一般有4種方法:
1、選擇排序是先將數組中的第一個數作為最大或最小數,然後通過循環比較交換最大數或最小數與一輪比較中第一個數位置進行排序。
2、冒泡排序也是先將數組中的第一個數作為最大或最小數,循環比較相鄰兩個數的大小,滿足條件就互換位置,將最大數或最小數沉底。
3、快速排序法主要是運用Arrays類中的Arrays.sort方法()實現。
4、插入排序是選擇一個數組中的數據,通過不斷的插入比較最後進行排序。
㈢ java定義一個整型數組將數組中的元素用冒泡排序法升序排序
請看:
/*
*冒泡排序
*/
publicclassBubbleSort{
publicstaticvoidmain(String[]args){
int[]arr={6,3,8,2,9,1};
System.out.println("排序前數組為:");
for(intnum:arr){
System.out.print(num+"");
}
for(inti=0;i<arr.length-1;i++){//外層循環控制排序趟數
for(intj=0;j<arr.length-1-i;j++){//內層循環控制每一趟排序多少次
if(arr[j]>arr[j+1]){
inttemp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
System.out.println();
System.out.println("排序後的數組為:");
for(intnum:arr){
System.out.print(num+"");
}
}
}
㈣ java數組的升序降序排列
先來說你的問題,,你要實現寫入文件是排序的結果,,那麼你就應該先排序再寫到文件,,而不是你現在這樣接受一個寫一個,,再說為什麼文件裡面是亂碼,是因為你每次寫入文件的時候寫了一個字元『0』,這個寫到文件中打開後並不是你想看到的字元串「0」,所以打開是亂碼,
幫你簡單修改了代碼
publicstaticvoidmain(Stringargs[])
{
Scannerscanner=newScanner(System.in);
try
{
intsum=0;//總分
RandomAccessFilef=newRandomAccessFile("data.txt","rw");
System.out.print("請輸入學生的個數:");
intn=scanner.nextInt();
ints[]=newint[n];
for(inti=0;i<n;i++)
{
System.out.println("請輸入第"+(i+1)+"個學生的成績");
s[i]=scanner.nextInt();
sum+=s[i];
}
System.out.println("總分:"+sum);
Arrays.sort(s);
f.writeBytes(Arrays.toString(s));
f.close();
}
catch(IOExceptione)
{
System.err.println(e);
e.printStackTrace();
}
}
隨機文件(RandomAccessFile)讀寫的一些方法,如writeInt writeChar 等,這些方法寫到文件的數據都是二進制的,比如你writeInt(25),寫到文件後打開是不會看到25的,這點一定要注意
㈤ java程序中數組升降序排列語法
完整代碼如下:
importjava.util.Scanner;
publicclassDemo01{
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
int[]a=newint[10];
int舉察i=0;
System.out.println("輸入10個數,每個數空格隔開:");
//輸入10個整數
while(true){
a[i]=sc.nextInt();
i++;
if(i==10){
break;
}
}
//冒正好茄泡排序(降序襪虛)
for(intk=0;k<a.length-1;k++){
for(intj=k+1;j<a.length;j++){
//升序把<改成>
if(a[k]<a[j]){
inttemp=a[k];
a[k]=a[j];
a[j]=temp;
}
}
}
//輸出排序後的數組
for(Integerb:a){
System.out.println(b);
}
}
}