gpt4 book ai didi

java - 如何优化我当前的 getMax 方法以检索数组中的最大值?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:31:27 25 4
gpt4 key购买 nike

在应用“最佳实践”的同时优化以下代码以使其更高效的最佳方法是什么。这只是一个简单的学校项目,它有效,我已经测试过了。但我只是觉得有一种更好、更有效的方法来编写这个方法。你怎么看?

  1. 我有一个数组预先填充了一堆数字。 getMax() 方法检索中的最高数字大批。但是如果数组是空的返回 -1
  2. nElems 只是一个变量,用于跟踪数组中存在的元素数量。

  3. array是类开头声明的私有(private)数组。

    public int getMax() {
    int k = 0;
    int max = array[0];

    for(int j=0; j<nElems; j++) {
    if(max < array[j])
    max = array[j];
    }

    if(k == nElems)
    return -1;
    else return max;
    } // end of method

哦,我应该如何命名我的 k 变量以使其更具可读性?它的目的是为 0,因此可以根据数组中的元素数检查它以返回 -1 或最高数;

假设所有数组值都是正数。

最佳答案

您不需要使用 nElems 跟踪数组中元素的数量,除非您的意思是您有一个部分填充的数组并且 nElems 是数字其中实际具有值的插槽的数量。更有可能的是,您应该只使用 array.length 来检查数组的长度。

您不需要变量 k 来“为 0”。文字 0 是 0 的一个很好的表示。所以如果你想在数组为空时返回 -1,你可以用

开始这个方法
if (array.length == 0)
return -1;

也就是说,为空数组返回 -1 有点奇怪,因为 -1 应该是该方法的有效结果。

关于java - 如何优化我当前的 getMax 方法以检索数组中的最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3681798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com