在Java中,判断一个数组是否已经排序,可以通过以下几种方法:
使用`Arrays.sort()`方法
java
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
}
}
使用循环遍历数组
java
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`):java
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[]`数组):
java
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
}
}
以上方法可以帮助你判断一个数组是否已经排序。请选择适合你需求的方法进行使用
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/59956.html