java - 更大元素的数组

标签 java arrays

我想创建一个接收数组和要比较的值的方法。它应该以数组的形式返回大于比较值的数字。

例如,greaterThan([3, 4, 5, 6], 4]) 应返回 [5, 6]greaterThan([3 , 4, 5, 6], 5]) 应返回 [6]

由于 result 数组的 length 是动态的,因此每次找到更大的元素时我都会增加大小。

static String greaterThan(int[] vectorCompare, int valueCompare)
{   
    Arrays.sort(vectorCompare);         // make it faster

    int size = 0;

    int[] result = new int[size];

    for (int value : vectorCompare)
    {
        if (valueCompare < value)
        {               
            size++;             
        }           
    }

    int[] resultCopy = Arrays.copyOf(result, size);

    // what to do next?

    return Arrays.toString(resultCopy);

}

有什么建议可以给我吗?我想过使用 ArrayList 但我有点卡住了。

最佳答案

您不需要对其进行排序,只需收集列表中的元素并对内容调用 toString 即可。如果顺序很重要,您可以稍后对收集的值列表进行排序。

    static String greaterThan(int[] vector, int compare) {
        List<Integer> greater = new ArrayList<>();

        for (int i : vector) {
            if (i > compare) {
                 greater.add(i);
            }
        }

        return greater.toString();
    }

关于java - 更大元素的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56365628/

相关文章:

java - 这可以用java中的图像来做吗?

java - 显示数据集中的小数

Java打印数组列表

c++ - C++ 中字符数组与整数数组的指针

android - ORMLite where 字符串数组中的子句

Java 将带有换行符的字符串拆分为数组,其中使用缓冲读取器从文件中读取字符串

javascript - ES5 定义不可更改的数组/属性值

java - ArrayList 返回零?

java - 拦截器中的链式 Action

java - GWT 2 : how can I add Button to the CellTable's header?