Java代码:数组选择排序 (升序降序)

本文提供了一个使用Java实现的简单数组排序示例,包括倒序和升序排列的方法。通过两个嵌套的for循环和简单的条件判断实现了选择排序算法。

public class test9 {
public static void main(String[] args){

int []a={12,2,45,65,99,3,21};
System.out.println("原数组为:"+"\n"+a[0]+"\t"+a[1]+"\t"+a[2]+"\t"+a[3]+"\t"+a[4]+"\t"+a[5]+"\t"+a[6]);
for(int i=0;i<a.length-1;i++){                        // 定义第一个比较的擂主        // 倒序排列
for(int j=i+1;j<a.length;j++){                //定义参赛人员
if(a[i]>a[j]){                        //两人比较
int t=a[i];                   //擂主大于参赛人员时,两者交换位置
a[i]=a[j];
a[j]=t;
}
}
}
System.out.println("倒序排列的数组为:");
for(int i=0;i<a.length;i++){
System.out.print(a[i]+"\t");
}
for(int i=0;i<a.length-1;i++){              //升序排列
for(int j=i+1;j<a.length;j++){
if(a[i]<a[j]){
int t=a[i];
a[i]=a[j];
a[j]=t;
}
}
}
System.out.println("\n"+"升序排列的数组为:");
for(int i=0;i<a.length;i++){
System.out.print(a[i]+"\t");
}
}


}
Java中,对数组进行升序降序排序可以使用多种方法,其中最常用的是使用`Arrays`类提供的`sort`方法。以下是一些实现数组升序降序排序的方法: ### 升序排序 使用`Arrays.sort()`方法可以对数组进行升序排序。 ```java import java.util.Arrays; public class AscendingSort { public static void main(String[] args) { int[] array = {5, 3, 8, 1, 2, 9}; // 升序排序 Arrays.sort(array); System.out.println("升序排序后的数组: " + Arrays.toString(array)); } } ``` ### 降序排序 Java没有直接提供降序排序的方法,但可以通过以下几种方式实现: 1. **使用`Arrays.sort()`和`Collections.reverseOrder()`**(适用于对象数组) ```java import java.util.Arrays; import java.util.Collections; import java.util.Comparator; public class DescendingSort { public static void main(String[] args) { Integer[] array = {5, 3, 8, 1, 2, 9}; // 降序排序 Arrays.sort(array, Collections.reverseOrder()); System.out.println("降序排序后的数组: " + Arrays.toString(array)); } } ``` 2. **使用自定义比较器**(适用于基本类型数组) ```java import java.util.Arrays; public class DescendingSort { public static void main(String[] args) { int[] array = {5, 3, 8, 1, 2, 9}; // 降序排序 Integer[] tempArray = Arrays.stream(array).boxed().toArray(Integer[]::new); Arrays.sort(tempArray, Collections.reverseOrder()); System.out.println("降序排序后的数组: " + Arrays.toString(tempArray)); } } ``` 3. **使用`Arrays.sort()`和自定义比较器**(适用于基本类型数组) ```java import java.util.Arrays; import java.util.Collections; public class DescendingSort { public static void main(String[] args) { int[] array = {5, 3, 8, 1, 2, 9}; // 降序排序 Integer[] tempArray = Arrays.stream(array).boxed().toArray(Integer[]::new); Arrays.sort(tempArray, Collections.reverseOrder()); System.out.println("降序排序后的数组: " + Arrays.toString(tempArray)); } } ``` ### 总结 - **升序排序**:直接使用`Arrays.sort()`方法。 - **降序排序**:可以使用`Collections.reverseOrder()`或自定义比较器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值