在Java中,判断一个数组是否已经排序,可以通过以下几种方法:
使用`Arrays.sort()`方法
import java.util.Arrays;public class Main {public static void main(String[] args) {int[] array = {1, 2, 3, 4, 5};boolean isSorted = Arrays.stream(array).allMatch(x -> x <= array[x - 1]);System.out.println(isSorted); // 输出 true}}
使用循环遍历数组
public class Main {public static void main(String[] args) {int[] array = {1, 2, 3, 4, 5};for (int i = 0; i < array.length - 1; i++) {if (array[i] > array[i + 1]) {System.out.println("数组未排序");return;}}System.out.println("数组已排序");}}
使用`Collections.sort()`方法 (适用于`List`):import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Main {public static void main(String[] args) {List
list = new ArrayList<>();
list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);boolean isSorted = list.stream().allMatch(x -> x <= list.get(x - 1));System.out.println(isSorted); // 输出 true}}

使用自定义比较器
import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Main {public static void main(String[] args) {List
list = new ArrayList<>();
list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);boolean isSorted = list.stream().allMatch(x -> x <= list.get(x - 1));System.out.println(isSorted); // 输出 true}}
```java
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
Integer[] array = {1, 2, 3, 4, 5};
boolean isSorted = Arrays.stream(array).allMatch(x -> x <= array[x - 1]);
System.out.println(isSorted); // 输出 true
}
}
```
使用`isSorted`方法(适用于`int[]`数组):
public class Main {public static boolean isSorted(int[] array) {for (int i = 0; i < array.length - 1; i++) {if (array[i] > array[i + 1]) {return false;}}return true;}public static void main(String[] args) {int[] array = {1, 2, 3, 4, 5};System.out.println(isSorted(array)); // 输出 true}}
以上方法可以帮助你判断一个数组是否已经排序。请选择适合你需求的方法进行使用
