java - 带有数组参数的 boolean 方法

标签 java arrays methods boolean

我花了很长时间才弄清楚这个练习,但我被困在这里了。我需要编写一个 boolean 方法,它将一个数组作为参数,如果数组中的数字按降序排列,则应返回 true。 Bu 任何时候我尝试我都有相同的值或错误。这是我的代码:

public class Question1c{
    public static void main (String[] args){
        int[] arr = {1, 9, 3, 4, 5, 6};
        boolean product = isDecreasing(arr);
        System.out.println(product);
    }

    public static boolean isDecreasing (int[] numbers){
        int first = numbers[0];

        for (int i : numbers){

            if(first <= i){
                first = i;
                return true;
            }

            //else{
            //  return false;
            //}
        }return false;
    }
}

最佳答案

您的代码中的问题是您无法返回 true直到你遍历整个数组。但是,您可以返回 false一旦您检测到“倒置” - 即您之前看到的数字后面的数字 大于 之前的数字的情况。

您相当接近一个可行的解决方案 - 您需要删除 return true , 取消注释 else , 并更改最后的 return falsereturn true .

为了使您的代码更具可读性,重命名 firstprior .还要考虑更改 for 的“foreach”版本循环到常规 for跳过数组初始元素的循环。这将使您能够检测到递减顺序,而不是您当前检测到的非递增顺序。

关于java - 带有数组参数的 boolean 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23419281/

相关文章:

javascript - JQuery 语法,带 .val (""); (返回数组)

python - Numpy 将数组乘以矩阵(外积)

javascript - 复选框:使用 Array.prototype.forEach.call 推送检查订单,

node.js - 使用 Node.js 模块导出中定义的方法

用于匹配带转义引号的引号字符串的 Java 正则表达式

Java图形和JScrollPane中的边框问题

java - Java Thread trail 中 "new"周围的括号?

java - 使用Jsoup删除div的Id属性?

go - 如何从 Golang 中的外部包导入方法?

javascript - 如何向函数添加方法?