判断数组元素是否升序排列

题目描述
编写一个方法static boolean ascendingOrder(double[] a),该方法判断double类型数组a中的值是否已按升序排列,是,返回true,否,返回false。在主方法中输入10个学生的成绩保存在数组double[] score中,再调用上述方法,若返回true,输出“数组是升序!”,否则输出“数组不是升序!“”。

输入描述
10个double类型的数

输出描述
判断结果,其中的标点是中文状态的。

输入样例
65 66 74 78 80 83 84 86 88 97

输出样例
数组是升序!

import java.util.Scanner;

/**

  • @desc 题目描述
  • 编写一个方法static boolean ascendingOrder(double[] a),
  • 该方法判断double类型数组a中的值是否已按升序排列,是,返回true,
  • 否,返回false。在
  • 主方法中输入10个学生的成绩保存在数组double[] score中,
  • 再调用上述方法,若返回true,输出“数组是升序!”,否则输出“数组不是升序!“”。
  • 输入描述
  • 10个double类型的数
  • 输出描述
  • 判断结果,其中的标点是中文状态的。
  • 输入样例
  • 65 66 74 78 80 83 84 86 88 97
  • 输出样例
  • 数组是升序!
  • /

很高兴得到你的采纳!!


public static void main(String[] args) {
        System.out.println(ascendingOrder(new double[]{1,5,2,3,4})?"数组是升序":"数组不是升序!");
    }
    static boolean ascendingOrder(double[] a){
        //数组转list
        List<Double> list = Arrays.stream(a).boxed().collect(Collectors.toList());
        //数组复制一份(list2)用于最后的相同比较
        List<Double> list2 = list.stream().collect(Collectors.toList());
        //list升序排序
        Collections.sort(list);
        //返回相同比较
        return list.equals(list2);
    }

这直接拿后一个跟前一个比较,如果大于前一个就继续,那么不就是升序,一旦有不符合的直接return