java - 使用 Java 查找基元数组中的最大值/最小值

标签 java arrays algorithm frameworks

写一个函数来确定数组中的最小值/最大值很简单,例如:

/**
 * 
 * @param chars
 * @return the max value in the array of chars
 */
private static int maxValue(char[] chars) {
    int max = chars[0];
    for (int ktr = 0; ktr < chars.length; ktr++) {
        if (chars[ktr] > max) {
            max = chars[ktr];
        }
    }
    return max;
}

但这不是已经在某个地方完成了吗?

最佳答案

使用 Commons Lang(转换)+ Collections(最小/最大)

import java.util.Arrays;
import java.util.Collections;

import org.apache.commons.lang.ArrayUtils;

public class MinMaxValue {

    public static void main(String[] args) {
        char[] a = {'3', '5', '1', '4', '2'};

        List b = Arrays.asList(ArrayUtils.toObject(a));

        System.out.println(Collections.min(b));
        System.out.println(Collections.max(b));
   }
}

请注意,Arrays.asList() 包装了底层数组,因此它不应占用太多内存,也不应对数组元素执行复制。

关于java - 使用 Java 查找基元数组中的最大值/最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1484347/

相关文章:

javascript - 使用 setinterval JavaScript 更新后数组计数不匹配

algorithm - 反转真值表生成 bool 语句?

c - 字符串数组正确扫描,然后一起运行

java - 如何将参数化方法传递给 Struts 2 操作的方法属性?

java - 为什么在解析 XML 时得到空节点值

java - 找不到类 'com.google.android.chimera.Activity' ,从方法 mu.b 引用

javascript - 如何使用Javascript计算数组中的相邻数字?

arrays - 打印长度为 2 到 n+1 的所有可能子序列的元素总和的高效算法

python - 快速替换字符串中的字符并检查子字符串是否是回文

java - 如何以独立于操作系统的方式将 rt.jar/classes.jar 包含在 Proguard 配置中?