小工具知识网

当前位置: 首页 > 行业知识 > 蓝桥杯-排序

行业知识

蓝桥杯-排序

2026-11-10 00:39:09 来源:互联网转载

数组排序

Arrays.sort(int[] a)

这index.php/tags-41973.html" >���形式是对一个数组的所有元素进行排序,并且时按从小到大的顺序。

package Work;import java.util.*;public class Imcomplete {public static void main(String args[]) {int arr[]=new int [] {1,324,4,5,7,2};Arrays.sort(arr);for(int x:arr) {System.out.print(x+" ");}}}

Arrays.sort(T[] arr,Comparatorc)用Comparator接口实现自定义顺序规则

实现Comparator接口实现降序

package AAA;import java.util.*;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubInteger[] arr= {1,324,2,5,4,45,8};Arrays.sort( arr, new Comparator(){//重写comparator方法@Overridepublic int compare(Integer o1, Integer o2) {// TODO Auto-generated method stubreturn o2-o1;//返回>0交换。}});System.out.println("您所输入的数组经过降序处理后为:");for(int x:arr) {System.out.print(x+" ");}}}

如果return o1-o2;则实现升序


Arrays.sort(arr,(o11,o2)->o1-o2)

java引入Lambda简写comparator:Arrays.sort(arr,(o11,o2)->o1-o2)

实现升序 

package AAA;import java.util.*;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubInteger[] arr= {1,324,2,5,4,45,8};Arrays.sort(arr,(o1,o2)->o1-o2);System.out.println("您所输入的数组经过升序处理后为:");for(int x:arr) {System.out.print(x+" ");}}}

 集合排序

Collections.sort(int []arr)

这种形式是对一个集合的所有元素进行排序,并且按从小到大的顺序。

package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list);System.out.println("经过升序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

 

 使用Lambda实现降序
package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list,(o1,o2)->o2-o1);System.out.println("经过降序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

Lambda其实是对comparator进行重写。

package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list,new Comparator() {@Overridepublic int compare(Integer o1, Integer o2) {// TODO Auto-generated method stubreturn o2-o1;}});System.out.println("经过降序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

上一篇:新手怎么自己建站?

下一篇:怎么把文件存在服务器里?